Beschrijving
<p>FinVault is een compleet digitaal bankplatform dat vanaf nul is opgebouwd als monorepo: een Expo/React Native mobiele app, een Vite/React webdashboard en vier Node.js microservices
verbonden via een API-gateway met WebSocket real-time updates en RabbitMQ event-streaming.</p>
<p>De mobiele app biedt biometrische authenticatie, QR scan-to-pay (EPC069-12 SEPA-standaard), multi-wallet beheer, kaartcontroles, spaardoelen en een volledig dark/light thema-engine met zes accentpaletten. Het webdashboard spiegelt elk scherm met een eigen CSS-gestuurd themasysteem, device-frame voorbeeldmodus en responsieve sidebar-layout.</p>
<p>De backend volgt banking-grade patronen: JWT access + roterende refresh-tokens met sha256-gehashte opslag, per-IP rate limiting (Redis of in-memory), HMAC
transactie-integriteitshashes, accountvergrendeling na mislukte logins, audit-logging en idempotente betalingsverwerking met Prisma-transacties.</p>
<p>Het project gebruikt een drielaagse branchstrategie (dev → staging → main) met GitHub Actions CI/CD-pipelines die elke laag valideren, Docker-images bouwen voor staging en productie,
en EAS-builds triggeren voor de Play Store. Elke feature werd bijgehouden via GitHub-issues met automatische sluiting bij merge.</p>
Features
- Multi-wallet bankieren: betaal-, spaar- en reisrekeningen met IBAN-generatie
- P2P-overboekingen via e-mail of IBAN met real-time saldoupdates
- QR scan-to-pay volgens de EPC069-12 SEPA-standaard
- Biometrische authenticatie (Face ID / vingerafdruk) met beveiligde sessieherstel
- Geplande & terugkerende betalingen (eenmalig, dagelijks, wekelijks, maandelijks)
- Maandbudgetten met categorielimieten en uitgaventracking
- Valutawissel met live FX-koersen voor 10 valuta's
- Kaartbeheer: bevriezen, bestedingslimieten, contactloos/buitenland/geldautomaat-toggles
- Spaardoelen met afrondingssparen en voortgangsvisualisatie
- Notificatiecentrum met leesstatus en real-time meldingen
- Beveiligingscentrum: wachtwoordbeheer, actieve sessiecontrole
- SEPA-incasso (mandaat) beheer met annuleringscontrole
- Disputeflow: transacties rapporteren en geschillen volgen
- Factuur- & bonbeheer met betalingsverzoeksysteem
- CSV-transactie-export via native deelvenster (mobiel) en download (web)
- Begunstigdenbeheer met automatisch opslaan bij overboeking
- Dark/light thema-engine met 6 accentpaletten en vooringestelde thema's
- Volledige offline demomodus met mock-data fallback
- Event-driven microservices met RabbitMQ en WebSocket-push
- Redis-backed rate limiting met automatische in-memory fallback
- CI/CD: GitHub Actions validatie op alle lagen + Docker-builds + EAS mobiele builds