Uses
Waar deze site en het product op draaien, en hoe we bouwen. Transparant, want we vinden dat zelf ook leuk om te lezen bij anderen.
Deze marketing-website
- Astro 5
- Statische generatie, zero JS by default, islands waar nodig (ROI-calculator, command palette).
- Tailwind CSS 4
- Via de Vite-plugin; design-tokens als CSS-variabelen, geen tailwind.config.
- Vanilla JS voor interactiviteit
- Geen React op de site. De paar interactieve stukken zijn klein genoeg voor plain JS.
- Inter + JetBrains Mono
- Variable fonts via Fontsource, self-hosted.
- TransIP VPS (nginx)
- Statische hosting met security-headers, in Nederland (EER).
Het product (AIX Forge zelf)
- React 18 + Vite
- SPA-frontend; de planning-tab is het zwaartepunt.
- Node.js 18+ (ESM) + Express
- Backend-API; JWT-auth, RBAC-middleware.
- SQLite via better-sqlite3 (WAL)
- Met auto-migraties; de datastructuur is de bron van waarheid in db.js.
- helmet + express-rate-limit
- Plus eigen lagen: MFA, trusted devices, IP-allowlist, anomaly-detectie.
- AES-256-GCM + envelope-encryptie
- Per-tenant data-encryptiesleutel; Customer-Managed Keys op Enterprise.
- TransIP VPS, Nederland
- Productie-klantdata binnen de EER; automatische AES-256-GCM-versleutelde backups (meermaals per dag).
Hoe we bouwen
- Kleine, gerichte wijzigingen
- Eén ding tegelijk; bestaande bestanden bewerken boven nieuwe maken.
- Geen dependency zonder reden
- Elke nieuwe dependency moet zich verantwoorden: wat, waarom, welk alternatief.
- Build in public
- De changelog houdt bij wat er verandert: features, verbeteringen én security-updates.
Zie ook: security-overzicht · het team · changelog.