- 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
31 lines
1.2 KiB
TypeScript
31 lines
1.2 KiB
TypeScript
import { PrismaClient } from "@prisma/client";
|
|
|
|
const prisma = new PrismaClient();
|
|
|
|
const projects = [
|
|
{ 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, status: p.status, active: p.active },
|
|
create: p,
|
|
});
|
|
}
|
|
console.log(`seeded ${projects.length} projects`);
|
|
}
|
|
|
|
main()
|
|
.then(() => prisma.$disconnect())
|
|
.catch((e) => {
|
|
console.error(e);
|
|
return prisma.$disconnect().finally(() => process.exit(1));
|
|
});
|