FROM node:20-alpine

WORKDIR /app

COPY package.json ./package.json
COPY tsconfig.base.json ./tsconfig.base.json
COPY packages/shared/package.json ./packages/shared/package.json
COPY apps/web/package.json ./apps/web/package.json

RUN npm install

COPY packages/shared ./packages/shared
COPY apps/web ./apps/web

RUN npm run build --workspace @tracker/shared && npm run build --workspace @tracker/web

EXPOSE 3000

CMD ["npm", "run", "start", "--workspace", "@tracker/web"]
