How I Built an SEO-Optimized Portfolio with Next.js 16
A practical walkthrough of how I built this very portfolio — covering Static Site Generation, JSON-LD structured data, Open Graph images, and a 68-k…
Tech news from the best sources
A practical walkthrough of how I built this very portfolio — covering Static Site Generation, JSON-LD structured data, Open Graph images, and a 68-k…
Today I started experimenting with Tree-sitter . I had heard the name before, but I had never actually used it. My goal was simple: take a TypeScrip…
There are already good Redis tools for NestJS. Most of them mainly help you connect NestJS to Redis and use the Redis client. That's useful, but as…
The Criteria pattern in NestJS One single way to filter, sort and paginate any list. Five parameters and a find() The example running through this a…
Transactions promise a simple guarantee: either everything commits, or nothing does. And yet, in a NestJS application with a repository layer, it is…
For a production logistics agent, error tracking should use one failure envelope at every execution boundary, then attach cost and latency before th…
The canonical starting point for a NestJS module backed by TypeORM is the one the framework itself documents: the module declares TypeOrmModule.forF…
Next.js and NestJS are often compared as if you have to choose one. But that comparison is slightly misleading. Next.js is primarily a React framewo…
Every time you build a SaaS product, you hit the same wall: spending the first few days re-writing multi-tenant architecture, handling tenant contex…
Build reliable NestJS webhooks for SaaS payments and integrations using signature verification, idempotency, durable inboxes, queues, retries, and o…
I built this delivery dispatch service to practice and master core backend engineering fundamentals in NestJS. Instead of just building a basic CRUD…
Most audit logs are a lie by omission. You write a row that says "user X deleted document Y at 12:03." A week later, an incident review pulls it up,…
A few weeks ago I shared nestjs-docfy here — a library that moves Swagger decorators out of NestJS controllers into companion *.controller.docs.ts f…
Originally published on Medium on November 11, 2023. In this guide, we’ll speak about communication in a distributed system using AWS Lambda and Nes…
Welcome to Part 5—the grand finale of our "NestJS v12.0 vs. Ditsmod v3.0" series! Over the last four articles, we have unpacked the strict Dependenc…
Welcome to Part 3 of the "NestJS v12.0 vs. Ditsmod v3.0" series! In our previous articles, we explored the strict Dependency Injection hierarchies a…
If you are building enterprise-grade Node.js applications with TypeScript, chances are you are already deeply familiar with NestJS . It has become t…
In Monitoring a SaaS in Production we wired up metrics and alerts so the team knows something is wrong within minutes of it happening. Metrics tell…
In Structured Logging for Node.js , I covered how to turn scattered console.log calls into structured, queryable events. That solves the "what happe…
In Deploying a Full Stack SaaS , I got the app running in production on a single instance: Docker images, a CI/CD pipeline, one NestJS container and…
In the last article , I set up a pipeline that builds, tests, and deploys the monorepo automatically. That solves getting code out safely and repeat…
In Subscription Billing and Plans we wired up the part of the product that collects money. This article covers the part that gets people into the pr…
Last time, in Accepting Payments with Stripe , I covered the part everyone assumes is the hard bit: taking a card and moving money. It isn't, really…
We spent the last article making the app fast. This one is about making sure it's still standing when someone tries to break it. That's the uncomfor…
A compliance officer at a bank was preparing for an upcoming audit when she asked a question nobody on the engineering team had a clean answer to. E…
A loan officer at a small digital bank was excited about the new model the data team had built. It could score a loan application in under a second,…
A finance officer at a mid sized bank was closing out the month when the numbers refused to line up. Customer accounts held a few cents more, in tot…
Your .env files are validated and out of Git by now, thanks to the last article on managing environment variables and secrets . The app boots with t…
Most AI tutorials teach you how to send a prompt to an LLM and display the response. That's enough for a demo. But building AI features that are rel…
A founder once messaged me with a problem that sounded almost too simple to be real. Customers were saying they never received their refund. Support…