# Build stage
FROM node:22-alpine AS builder
WORKDIR /app

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

# Copy source and build
COPY . .
ENV NODE_ENV=production
RUN npm run build || exit 1

# Production stage: serve the static SvelteKit output.
FROM caddy:2.8-alpine AS runtime
COPY Caddyfile.web /etc/caddy/Caddyfile
COPY --from=builder /app/build /usr/share/caddy

EXPOSE 3000
