// prisma/seed.ts
import { prisma } from "../src/lib/prisma";

async function main() {
  // Seed Projects
  await prisma.project.createMany({
    data: [
      {
        title: "Enterprise ERP System",
        description:
          "Full-scale ERP system built with NestJS microservices, handling inventory, finance, and HR modules for 500+ concurrent users.",
        imageUrl: "/projects/erp.png",
        liveUrl: "https://demo.example.com",
        githubUrl: "https://github.com/username/erp-system",
        techStack: ["NestJS", "Next.js", "PostgreSQL", "Redis", "Docker"],
        featured: true,
        order: 1,
      },
      {
        title: "Real-time Analytics Dashboard",
        description:
          "Interactive analytics platform with real-time data visualization, WebSocket integration, and multi-tenant architecture.",
        imageUrl: "/projects/dashboard.png",
        liveUrl: "https://analytics.example.com",
        githubUrl: "https://github.com/username/analytics",
        techStack: ["Next.js", "NestJS", "Prisma", "Chart.js", "PostgreSQL"],
        featured: true,
        order: 2,
      },
      {
        title: "API Gateway & Auth Service",
        description:
          "Scalable API Gateway with JWT authentication, rate limiting, and microservice orchestration using Clean Architecture principles.",
        imageUrl: "/projects/gateway.png",
        githubUrl: "https://github.com/username/api-gateway",
        techStack: ["NestJS", "Redis", "JWT", "Docker", "Kubernetes"],
        featured: true,
        order: 3,
      },
    ],
  });

  // Seed Experiences
  await prisma.experience.createMany({
    data: [
      {
        company: "Tech Corp Indonesia",
        role: "Senior Fullstack Engineer",
        startDate: new Date("2022-01-01"),
        current: true,
        description:
          "Leading development of enterprise-grade web applications with focus on scalability and clean architecture.",
        highlights: [
          "Architected microservices-based ERP system serving 500+ concurrent users",
          "Reduced API response time by 60% through Redis caching & query optimization",
          "Mentored 3 junior developers on NestJS patterns and SOLID principles",
          "Implemented CI/CD pipeline cutting deployment time from 2 hours to 15 minutes",
        ],
        techStack: [
          "Next.js",
          "NestJS",
          "PostgreSQL",
          "Redis",
          "Docker",
          "AWS",
        ],
        order: 1,
      },
      {
        company: "Startup Fintech",
        role: "Fullstack Developer",
        startDate: new Date("2020-03-01"),
        endDate: new Date("2021-12-31"),
        current: false,
        description:
          "Built core financial services platform from ground up with emphasis on security and performance.",
        highlights: [
          "Developed payment processing system handling Rp 50B+ monthly transactions",
          "Built real-time notification system using WebSockets and Redis pub/sub",
          "Implemented automated testing achieving 85%+ code coverage",
        ],
        techStack: ["React", "Node.js", "Express", "MongoDB", "PostgreSQL"],
        order: 2,
      },
    ],
  });

  console.log("✅ Seed completed");
}

main()
  .catch(console.error)
  .finally(() => prisma.$disconnect());
