FROM node:20-alpine

WORKDIR /app

# Copy package files and install dependencies
COPY package.json package-lock.json ./
RUN npm ci

# Copy source code
COPY . .

# Build frontend
RUN npm run build

# Expose port
EXPOSE 3001

# Set production environment
ENV NODE_ENV=production

# Start server
CMD ["node", "--import", "tsx", "server/index.ts"]
