Sluijsens 629777c17b
Build, Test and Package Release / build-and-test (pull_request) Successful in 1m57s
Build, Test and Package Release / deploy (pull_request) Skipped
Merge pull request 'ci: run workflow on pull requests and expire artifacts after 1 day' (#1) from feature/updates_gitea_workflow into master
Reviewed-on: #1
2026-07-23 23:45:13 +02:00

SLP Software — React Frontend

React frontend for the SLP Software marketing site. Ported 1-to-1 from the static reference designs in References/ (slp-software.html = purple accent, slp-software-rood.html = red accent), with an added visible theme switcher (red default, purple selectable).

Tech Stack

Getting Started

npm install
npm run dev

The app runs at http://localhost:5173/ by default.

Available Scripts

Script Description
npm run dev Start the Vite dev server
npm run build Type-check and build a production bundle to dist/
npm run preview Preview the production build locally
npm run test Run the test suite once (Vitest)
npm run test:watch Run the test suite in watch mode
npm run lint Run ESLint
npm run format Format the codebase with Prettier

Project Structure

src/
  components/       Presentational React components (Nav, Hero, PackagesSection, ...)
  data/             Static site content (content.ts) — current source of truth for copy/data
  hooks/            usePackagesQuery — placeholder TanStack Query hook
  routes/           TanStack Router route definitions (__root.tsx, index.tsx)
  theme/            Theme system (ThemeProvider, theme tokens)
  test/             Test setup (Vitest + Testing Library)
  fonts.ts          Self-hosted font imports (@fontsource)
  index.css         Global styles + red/purple theme CSS variables
  main.tsx          Application entry point
  router.tsx        Router instance (hash history)
  queryClient.ts    Shared TanStack Query client

Theming

The site defaults to the red theme; visitors can switch to purple via the toggle button in the navigation bar. The chosen theme is persisted in localStorage and restored on future visits. See aidlc-docs/features/react-frontend/construction/react-frontend-app/functional-design/business-rules.md for the full theme business rules.

Deployment Notes

This app builds to a plain static bundle (npm run builddist/), intended for upload to a traditional web host via FTP. TanStack Router uses hash-based history (/#/route) so that client-side routing keeps working even on hosts without server-side rewrite rules configured. See the feature's NFR Requirements/Design documentation under aidlc-docs/features/react-frontend/ for the rationale.

S
Description
No description provided
Readme
1.2 MiB
Languages
TypeScript 62.3%
HTML 34.5%
CSS 2.2%
JavaScript 1%