Klantenportaal
Over dit project
Klanten die vragen waar dat ene document ook alweer stond
Een audit als bijlage, een offerte als tweede bijlage, en drie weken later de vraag of ik de laatste versie nog een keer wil sturen. Dat is de mail-manier, en die loopt vanzelf vast: niemand weet meer welke versie de goede is.
Nu logt een klant in met een eigen code en ziet alleen zijn eigen spullen: audits, offertes, aanleverlijsten, een SEO-dashboard en een gedeelde map om dingen aan te leveren. Ik ververs een document en hij ziet vanzelf de nieuwe versie, want het is letterlijk hetzelfde bestand.
Nul dependencies, en dat is geen luiheid
Het hele portaal draait alleen op ingebouwde Node-modules. Geen installatie van pakketten, geen updates die morgen breken, en geen code van derden in een systeem waar klantdocumenten in staan.
Dat is een keuze met een prijs: alles wat een pakket voor je zou doen, schrijf je zelf. De opbrengst is dat er niets stilletjes kan veranderen zonder dat ik het zelf heb getypt.
Verstuurd mag nooit een leugen zijn
Als een klant feedback achterlaat, gaat die eerst naar schijf. Pas daarna krijgt zijn browser de bevestiging, en pas daarna gaat de melding naar mij. Mislukt die melding, dan probeert hij het opnieuw na vijf seconden, na dertig, en er loopt elk uur een controle over wat is blijven liggen.
Het effect: een storing in de meldingsdienst kost nul berichten, en het woord verstuurd in de browser is nooit een leugen.
Een link die je aan een partner geeft en weer intrekt
Soms moet een derde partij een document zien zonder inlog. Dat gaat via een deel-link met een willekeurige sleutel van 128 bits, dus geen oplopend nummer en geen klantnaam in het adres. De vergelijking gebeurt in vaste tijd, zodat je er niet naartoe kunt raden.
Zo'n gast ziet precies dat ene document en verder niets: geen feedbackveld, geen akkoordknop, geen andere klanten. En je trekt hem in met een klik.