NestJS, where our own products keep their data.

A backend fails slowly. It works for a year, then every change becomes frightening because nobody knows what depends on what. NestJS imposes enough structure to stop that, without the ceremony of a heavier framework.

Where we run it

The Ilmino API and the backend behind Sell Any Vans and Sell Any Trucks are both NestJS on PostgreSQL, in production and carrying live traffic.

What we build with it

NestJS in practice.

Typed APIs

REST or GraphQL with validation at the boundary, so bad data is rejected before it reaches your database.

Authentication and permissions

Roles, organisations and per-record access, designed before the first feature rather than bolted on at the end.

Background work

Queues, scheduled jobs and long-running tasks that survive a deploy.

Integrations

Payment providers, CRMs, ERPs and third-party APIs, with the failure paths handled.

Database design

PostgreSQL schemas and migrations that can be applied safely against a live system.

When not to use it

The honest view.

If your API is genuinely a handful of endpoints, NestJS is more structure than you need and serverless functions will do. It earns its keep once there are real domain rules, background work and more than one developer.

Questions we get asked

Straight answers.

Why NestJS over Express?

Express gives you no opinions, which is fine for one developer and a small surface. NestJS gives you modules, dependency injection and a testing story, which is what you want once the code outlives the person who wrote it.

Which database?

PostgreSQL by default. It is boring in the way infrastructure should be, and it does more than most teams realise before you need anything exotic.

Can you take over an existing Node backend?

Yes. We would audit the code, the schema and the deployment first and tell you honestly whether it is worth continuing or replacing.

How do you handle migrations?

Versioned, reversible, and applied deliberately rather than automatically. We have been bitten by a framework helpfully rewriting a production schema, and we do not let that happen twice.

Building in NestJS?

Whether it is a new build, a rescue or a second pair of hands alongside your team, tell us what you need and you will get a straight answer within one working day.