01 / The challengeWhat did smvbasen need?
smvbasen needed to serve structured company information to Danish small and medium enterprises, from sources that arrive in inconsistent formats and change on their own schedules. The early version worked, but every new data source meant new bespoke code, and the team was spending more time maintaining ingestion than building the product their customers paid for.
02 / Our approachHow did we run the project?
We started by separating ingestion from presentation. Rather than one pipeline per source, we defined a single internal schema and wrote thin adapters that map each source onto it, so adding a source became a configuration job instead of an engineering project. From there we rebuilt the application layer on Next.js with server-side rendering, so that pages remain indexable and fast on the slow connections a lot of the audience actually browses on.
Discover
We listen and write it down
Scope + estimate
Design
You try it before we build
Prototype
Build
A demo every sprint
Sprint demos
03 / What we builtWhat did we build?
The platform now runs as a TypeScript monorepo: an adapter layer for ingestion, a Postgres store with a normalised schema, and a Next.js application on top.
Subscription billing, role-based access, and an admin surface for the team to correct records without a developer are all part of the build.
Search runs against indexed Postgres rather than a separate service, which keeps operational cost proportional to the size of the business.
Fig. 01 · Feature map. Details vary by plan.
Built with Next.js and TypeScript on the front end, Node.js and PostgreSQL behind it, deployed on infrastructure the client owns.
04 / ResultsWhat changed for the business?
- Partnership length
- 1 yr+ · ongoing
05 / What's nextWhat's next?
Launch was the first milestone, not the finish line — the same team keeps shipping on a regular release cycle.
FIG. 02 · SHIPPED RELEASES (SOLID) AND WHAT'S PLANNED NEXT (DASHED).