Files
SlpSoftware/aidlc-docs/features/react-frontend/construction/react-frontend-app/nfr-requirements/tech-stack-decisions.md
T

1.7 KiB

Tech Stack Decisions — react-frontend-app

Concern Decision Rationale
Build tool Vite Confirmed in requirements.md NFR-1; fast dev server, first-class TypeScript/React support, pairs naturally with Vitest.
Language TypeScript Confirmed in requirements.md NFR-1; type safety for the domain entities defined in functional design.
UI library React 18+ Confirmed in requirements.md NFR-1.
Styling Tailwind CSS Confirmed in requirements.md NFR-2. Theme variants implemented as Tailwind theme classes (theme-red / theme-purple) per Functional Design Question 2 answer.
Routing TanStack Router, hash-based history (createHashHistory) Confirmed in requirements.md FR-5; hash history chosen per this stage's routing-strategy decision (NFR Requirements Question 4) to be safe on a plain FTP static host without server rewrite rules.
Data fetching (forward-looking) TanStack Query (@tanstack/react-query) Confirmed in requirements.md FR-5; a QueryClientProvider is set up now, with one placeholder query hook (usePackagesQuery) as defined in Functional Design.
Testing Vitest + React Testing Library NFR Requirements Question 2 answer A.
Linting ESLint (typescript-eslint, eslint-plugin-react-hooks) + Prettier NFR Requirements Question 3 answer A.
Package manager npm (with committed package-lock.json) Default choice for a Vite-scaffolded project; supports SECURITY-10 (lock file requirement).
CI None for this iteration NFR Requirements Question 6 answer B — deferred to Operations phase.
Accessibility Best-effort (no formal WCAG target this iteration) NFR Requirements Question 5 answer B; explicit a11y attributes from Functional Design are still implemented.