FROM node:22-bookworm-slim

WORKDIR /app

COPY package.json package-lock.json* ./
COPY backend/package.json backend/
COPY frontend/package.json frontend/
COPY backend/prisma backend/prisma

RUN npm install

COPY . .

RUN npm run db:generate -w backend
RUN npm run build -w frontend

ENV NODE_ENV=production
ENV PORT=3000
ENV HOST=0.0.0.0
ENV DATABASE_URL="file:../data/awards.db"

EXPOSE 3000

WORKDIR /app/backend

CMD ["sh", "-c", "mkdir -p data && npx prisma db push && npx tsx prisma/seed.ts && npx tsx src/index.ts"]
