feat(phase2): planned badge, Cmd+K palette, per-project dashboard cards

- Project.status (planned/wired/active) + seed updates
- ProjectBadge component
- CommandPalette (⌘K) wired in PanelShell with project + nav + sign-out
- Dashboard '/' shows per-project cards + KPI strip
- Added doner312 to seeded projects
This commit is contained in:
Semih
2026-05-13 10:54:07 +00:00
parent 7b83ef8f11
commit e455ebbfce
14 changed files with 782 additions and 57 deletions

View File

@@ -3,18 +3,19 @@ import { PrismaClient } from "@prisma/client";
const prisma = new PrismaClient();
const projects = [
{ key: "sase", name: "Sase.tr", description: "VIN/chassis lookup + auto parts catalog", active: true },
{ key: "catvicer", name: "Catvicer", description: "Multi-tenant catering SaaS", active: false },
{ key: "kokpit", name: "Kokpit", description: "Internal ops dashboard", active: false },
{ key: "otoyedekparca", name: "otoyedekparca.co", description: "Auto parts marketplace", active: false },
{ key: "eryaman", name: "Eryaman Evleri TYY", description: "Residence portal", active: false },
{ key: "sase", name: "Sase.tr", description: "VIN/chassis lookup + auto parts catalog", status: "active", active: true },
{ key: "catvicer", name: "Catvicer", description: "Multi-tenant catering SaaS", status: "planned", active: false },
{ key: "kokpit", name: "Kokpit", description: "Internal ops dashboard", status: "planned", active: false },
{ key: "otoyedekparca", name: "otoyedekparca.co", description: "Auto parts marketplace", status: "planned", active: false },
{ key: "eryaman", name: "Eryaman Evleri TYY", description: "Residence portal", status: "planned", active: false },
{ key: "doner312", name: "312 Döner", description: "QSR ordering & ops", status: "planned", active: false },
];
async function main() {
for (const p of projects) {
await prisma.project.upsert({
where: { key: p.key },
update: { name: p.name, description: p.description },
update: { name: p.name, description: p.description, status: p.status, active: p.active },
create: p,
});
}