[F0][FE] PK-71: Next.js 15 + Tailwind v4 + shadcn/ui + dark mode + home page (+ PK-74 fix) #5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/f0-fe-bootstrap"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Frontend bootstrap pre Fázu 0: Next.js 15 (App Router, RSC), Tailwind v4, shadcn/ui (style new-york, base neutral, CSS variables), dark mode cez next-themes, Geist font, home page + ThemeToggle. Plus PK-74 fix (
public/.gitkeep) odblokujúci Docker build, squash-nutý do tohto PR.Tracking issues:
[F0][FE] Next.js 15 + Tailwind v4 + shadcn/ui + dark mode + home page(mention://issue/2bf01120-1922-46cb-9b68-b6a38ae2efd7)[F0][FE] fix: docker build padá lebo public/ adresár chýba(mention://issue/ee162148-ce23-44db-a5f6-233904ea37e1)Commits:
9f793f3 feat(frontend): Next.js 15 + Tailwind v4 + shadcn/ui + dark mode + home page25314a8 fix(frontend): add public/.gitkeep to unblock docker build (PK-74)Base:
main(723653b, po PR #1 / PK-69 squash). Rebase preskočil4c3ee34(PK-69 pre-squash, už v main cez squash).Čo je v PR
apps/frontend/: Next.js 15.5 (App Router, RSC), React 19, TS strict +noUncheckedIndexedAccess, ESLint 9 (next/core-web-vitals+next/typescript).@import "tailwindcss",@theme inline, CSS variables, žiadny JS Tailwind config.components.json(stylenew-york, baseneutral,cssVariables: true);src/lib/utils.tsscn(). UI komponenty pridávam on-demand vo Fáze 1+.next-themes: prepínaclass="dark"na<html>.globals.cssdefinuje obidva sety premenných (:rootlight,.darkdark, neutrálna OKLCH paleta). V komponentoch žiadnedark:prefixy.next/font/google.src/app/page.tsx): „Rule Studio" vtext-xl font-semibold, podtitul vtext-sm text-muted-foreground,ThemeToggle(Sun/Moon zlucide-react) vpravo hore.next.config.ts:output: "standalone"+reactStrictMode.apps/frontend/Dockerfilemulti-stage (node:22-alpine: deps → builder → runner s non-root userom,server.jszo standalone outputu) +.dockerignore.apps/frontend/public/.gitkeep— PK-74 fix: Dockerfile runner stage COPY-uje/app/public, čo bez tohto súboru padalo (Next.js 15 create-next-apppublic/už negeneruje).docker-compose.ymlfrontend: healthcheck ceznode -e "fetch('http://127.0.0.1:3000/')..."(Node 22 má natívny fetch), interval 10s, retries 6, start_period 20s.docker-compose.dev.ymlfrontend: staviabuildertarget a bežípnpm devs bind mountom + named volume prenode_modulesa.nextcache.Test plan
pnpm install(workspace) — ✓pnpm -r run lint— ✓pnpm -r run typecheck— ✓ (strict + noUncheckedIndexedAccess)pnpm --filter frontend build— ✓ (/○ Static, 11.6 kB / 114 kB First Load)docker compose up frontend— healthcheckhealthydo 30 s,localhost:3000vracia HTML s<title>Rule Studio</title>./flipneclass="dark"na<html>a téma sa vizuálne prepne.Notes
Button,Input, ...) — pridávajú sa on-demand, vo F0 ich nepotrebujeme.✓ ánopre PK-71 + PK-74); po green CI squash-merge.