diff --git a/services/web-ui/Dockerfile b/services/web-ui/Dockerfile index f34a81e..6f1c9d0 100644 --- a/services/web-ui/Dockerfile +++ b/services/web-ui/Dockerfile @@ -1,4 +1,21 @@ +# Stage 1: build CSS bundle +FROM node:20-alpine AS css-build +WORKDIR /build + +# Copy only the files needed to install deps (better cache layering) +COPY package.json package-lock.json* ./ +RUN npm install --no-audit --no-fund + +# Copy source CSS + tailwind config + every HTML file (tailwind scans HTML to determine which utilities to emit) +COPY tailwind.config.js postcss.config.js ./ +COPY src/ ./src/ +COPY public/ ./public/ + +# Build into public/dist/app.css +RUN npx tailwindcss -i ./src/css/app.css -o ./public/dist/app.css --minify + +# Stage 2: runtime FROM nginx:alpine -COPY public/ /usr/share/nginx/html/ +COPY --from=css-build /build/public/ /usr/share/nginx/html/ COPY nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80 diff --git a/services/web-ui/public/fonts/inter-400.woff2 b/services/web-ui/public/fonts/inter-400.woff2 new file mode 100644 index 0000000..2bcd222 Binary files /dev/null and b/services/web-ui/public/fonts/inter-400.woff2 differ diff --git a/services/web-ui/public/fonts/inter-500.woff2 b/services/web-ui/public/fonts/inter-500.woff2 new file mode 100644 index 0000000..fdfdcc6 Binary files /dev/null and b/services/web-ui/public/fonts/inter-500.woff2 differ diff --git a/services/web-ui/public/fonts/inter-600.woff2 b/services/web-ui/public/fonts/inter-600.woff2 new file mode 100644 index 0000000..fbae113 Binary files /dev/null and b/services/web-ui/public/fonts/inter-600.woff2 differ diff --git a/services/web-ui/public/fonts/jetbrains-mono-400.woff2 b/services/web-ui/public/fonts/jetbrains-mono-400.woff2 new file mode 100644 index 0000000..66c5467 Binary files /dev/null and b/services/web-ui/public/fonts/jetbrains-mono-400.woff2 differ diff --git a/services/web-ui/public/fonts/jetbrains-mono-600.woff2 b/services/web-ui/public/fonts/jetbrains-mono-600.woff2 new file mode 100644 index 0000000..936fcd0 Binary files /dev/null and b/services/web-ui/public/fonts/jetbrains-mono-600.woff2 differ