Building an MCP Server in TypeScript
A support agent asks your assistant, "What is the status of order 4417?" The model does not know. It has never seen your database,…
36 posts RSS
A support agent asks your assistant, "What is the status of order 4417?" The model does not know. It has never seen your database,…
A client hammers your login endpoint. You added a limit: 100 requests per minute per IP. You feel safe. Then someone fires 100 req…
A background job lands in your jobs table. Two workers wake up at the same time, both run SELECT FROM jobs WHERE status = 'pending…
Your API is humming along at 200 requests per second. Traffic doubles during a launch, you scale your Node.js service from 4 pods…
A support engineer runs a quick query to debug a customer complaint. She forgets one WHERE tenant id = $1 . The dashboard now show…
A user places an order. Your service opens a transaction, writes the row to Postgres, commits, and then calls broker.publish("orde…
A customer completes a payment. Your billing provider fires a webhook to POST /webhooks/stripe , your server is mid-deploy, and th…
A customer taps "Pay." The request reaches your server, the charge succeeds, and then the response times out on the way back. The…
The last post in this series was about what not to feed an AI: keep your secrets out of the prompt. This one is the other half of…
If you have ever built a search or filter endpoint, you have made this uncomfortable choice. Use GET, and your complex filter obje…
Someone hits an error, copies the whole stack trace into a chat window, and asks the model to "just figure this out fast." Buried…
Part 3 of 3 on @faizahmed/secret-keystore . Part 1 was the threat model; Part 2 was the CLI. This part is how your app reads secre…
Part 2 of 3 on @faizahmed/secret-keystore . Part 1 covered the threat model; this part is pure hands-on. By the end you'll have an…
Part 1 of 3 in a deep-dive on @faizahmed/secret-keystore . New here? Start with the Complete Guide. For the original incident writ…
A year ago I would have told you a .env file was fine. Then we patched a CVSS 10.0 RCE in Next.js (CVE-2025-66478) and spent the n…
Before you read, run this test If you’re using background jobs, queues, or retries, answer this: If the same task runs twice, does…
A few months ago, we had a system that was “working fine”. Jobs were getting processed. Workers were running. No errors in logs. B…
This post starts with the production problem we hit in late 2025, the critical security vulnerability in React Server Components a…
At scale, notifications are not special. They are just one of the most common million job problems you will ever solve. Email, SMS…
Everything was fine until it wasn’t. Our Node.js app, powered by AWS SDK v3, started freezing during peak traffic. Requests to S3…
If a credential can be found in your code base, CI logs, or Slack archive — it’s not just a secret; it’s a risk. By 2025, leaked c…
“It’s 3 AM. The system’s live. You push an update and suddenly traffic falls off a cliff.” That’s the moment teams stop being hero…
With real-world Docker Compose setups, GitHub Actions CI pipelines, and practical command recipes. Everything you need to master D…
Observability isn't just about logs anymore. In 2025, understanding how your API behaves under load, in production, across service…
In the world of SaaS, designing for scale starts with multi-tenancy done right. Why Multi-Tenant Architecture Matters SaaS is all…
Why Packaging Still Breaks in 2025? Despite being two decades into Node.js, publishing a library that works across CommonJS (CJS),…
Are JWTs safe? Should you switch to PASETO? Is session-based auth outdated? In this guide, we’ll compare modern token systems in d…
In this post, we’ll explore what replay attacks are, how JWS and JWE differ, and how to generate + validate session fingerprints u…
Introduction: Is Node.js Really Leaking Memory? Have you ever noticed your Node.js app using more and more memory over time — even…
Think JSON.parse() is harmless? Think again. When you're dealing with massive logs, analytics dumps, or API exports, that innocent…
Before we dig deep into the details. Let’s break down on what problem this article really addresses, what solution works best and…
Streaming Isn’t Always Smooth! Node.js Streams are a great way to handle large data without loading everything into memory. But wi…
When working with large datasets in JavaScript, many developers instinctively reach for .map() to transform arrays. It’s clean, el…
In ExpressJS , we always have to start from scratch for things like CSRF / JWT Token , Exception Handling , Clusters , Queues , Ca…
This article lists things that we can achieve in NodeJS without using any NPM dependencies. You can find the repository on GitHub…
Node.js is an open-source and cross-platform JavaScript runtime environment. It is a popular tool for almost any kind of project!…
Type to search.