# ---- Stage 1: Frontend bauen ----
FROM node:20-slim AS frontend-build
WORKDIR /app/frontend
COPY frontend/package.json ./
RUN npm install
COPY frontend/ ./
RUN npm run build

# ---- Stage 2: Backend + gebautes Frontend ----
FROM node:20-slim AS runtime
WORKDIR /app

COPY backend/package.json ./
RUN npm install --omit=dev

COPY backend/ ./
# Vom Build-Stage kommt das fertige Frontend nach backend/public
COPY --from=frontend-build /app/backend/public ./public

ENV NODE_ENV=production
ENV PORT=3000

EXPOSE 3000

CMD ["node", "src/index.js"]
