FROM node:24-alpine AS base
WORKDIR /app
COPY package.json /app/package.json
COPY frontend/package.json /app/frontend/package.json
RUN npm install --workspaces --include-workspace-root=false

FROM base AS build
COPY frontend /app/frontend
WORKDIR /app/frontend
RUN npm run build

FROM nginx:1.29-alpine AS runtime
COPY docker/nginx/default.conf /etc/nginx/conf.d/default.conf
COPY --from=build /app/frontend/dist /usr/share/nginx/html
EXPOSE 80
