Backend APIs, volledig getypt, gepagineerd voor productie.
APIs die het contact met echt verkeer overleven. Getypt van de databaserij tot de frontend-component, standaard gepagineerd, idempotent waar het ertoe doet, geïnstrumenteerd zodat je in productie ziet wat ze doen. We bouwen backends om saai te zijn, expres.
Wat we bouwen
Types die over de wire gaan
Het schema genereert de databasetypes; de API-laag exposet ze als getypte endpoints; de frontend-client krijgt dezelfde types zonder handmatige sync. Een kolom hernoemen in de database geeft een build-fout in de frontend-component.
Paginering als primitive
Cursor-based paginering op elke list-endpoint by default. Geen `?page=N` rekensom die breekt als data mid-scroll inserts. Infinite scroll, tabel-paginering en exports lopen allemaal via dezelfde primitive.
Idempotency op writes die ertoe doen
Payment-vormige operaties (charges, sends, signups met side effects) accepteren een idempotency key en dedupen op databaseniveau. Retries zijn van nature veilig, niet uit hoop.
Background jobs met retries
Een queue-laag met expliciete retry-policies, backoff schedules en dead-letter handling. Long-running werk blokkeert geen requests; failed jobs verschijnen in observability in plaats van te verdwijnen.
Authentication en authorization, gescheiden
Auth bewijst wie; authz bewijst wat ze mogen doen. Twee lagen, twee test surfaces. De meest voorkomende security bug in B2B SaaS is ze door elkaar halen; wij niet.
Observability die productie overleeft
Structured logs op elke API-boundary, traces door de request → job → DB → external API chain, en dashboards die je om 02:00 ook nog kunt lezen. We instrumenteren wat wij leveren op; jij ziet wat er gebeurt.
Waar dit past
Je bent voorbij de prototype-API en hebt het nodig dat hij echt verkeer aankan zonder herschrijven.
Je team opgeleverd features sneller dan het API-contract de frontend kan bijhouden, en types slippen.
Background jobs falen stil in productie en je weet niet welke totdat een gebruiker klaagt.
Tech stack
- TypeScript
- Elysia
- Postgres
- Drizzle
- BullMQ
Wil je dit voor je team?
30 minuten om vast te stellen wat je nodig hebt. Geen pitchdeck, geen verplichtingen. We zeggen je eerlijk of Stacklane past.
Plan een gesprek
