Naar de inhoud
Clinford Jordano Valencia
Alle projecten
PlatformWebMobiel

KYC Studio, schemagestuurde flows

Een configuratiegestuurd UI-platform met config-as-code via Git, zodat compliancewijzigingen binnen uren live gaan zonder frontend-deployment.

Rol
Senior Frontend Engineer
Periode
2025–heden
Stack
TypeScript · jsonform · Mini Program · Git · CI/CD · Schema validation

Het probleem

Verificatieflows voor meer dan 100 landen betekenden gedupliceerde code en een engineeringticket telkens als compliance of product een regionale regel wilde aanpassen.

De aanpak

  • Formulieren renderen vanuit een schema. De UI leest JSON- of YAML-configuratie via jsonform: het schema genereert de velden en validatieregels. Eigen acties, zoals het starten van de native NFC-bridge of een liveness-check, blijven in de code.
  • Eén stap, verschillende uitkomsten. De configuratie bepaalt wat een stap doet per land en platform (web, mobiel of Mini Program). Waar NFC wordt ondersteund, toont de stap scaninstructies en een knop Scannen met NFC; anders de gewone formuliervelden en een knop Doorgaan. Product en compliance passen dat aan in de configuratie, niet in de code.
  • Config as code. Compliance- en productmedewerkers dienen wijzigingen in via Git. Elke wijziging opent automatisch een pull request en draait CI met strikte schemavalidatie op basis van TypeScript-types, zodat foutieve configuratie faalt voordat die productie bereikt.

Twee keuzes die uitleg verdienen

jsonform voor rendering, code voor acties. Een volledig servergestuurde UI die willekeurige logica van de server uitvoert, vraagt om risico op remote code execution en om performanceproblemen. Datagedreven rendering met acties die aan vooraf gecompileerde handlers zijn gekoppeld, behoudt de flexibiliteit zonder dat risico.

Git in plaats van een beheerformulier. Makkelijk bewerken zonder governance breekt productieflows. Pull requests, typecontroles en CI maken elke wijziging herleidbaar, beoordeeld en eenvoudig terug te draaien.

Het resultaat

Configuratiereleases zijn niet meer afhankelijk van frontend-deployments, dus complianceupdates voor meerdere markten gingen van weken naar uren, en regionale codeduplicatie groeide niet verder.