TypeScript Coffee

TypeScript Coffee

Welcome to TypeScript Coffee

Your source for the latest news in the TypeScript community

News Thumbnail

TypeScript 7 Went Native: What Actually Changes And What Doesn't

Everyone's heard by now that TypeScript "went native." And I keep seeing the same wrong conclusion... Read More

Author Avatar Nazar Boyko 17 days ago
News Thumbnail

How I Smashed a Bug in a Shared Authentication Library

This is a submission for DEV's Summer Bug Smash: Smash Stories powered by Sentry. This happened a... Read More

Author Avatar Daniel Balcarek 16 days ago
News Thumbnail

Self-Healing Playwright: building a locator-healing wrapper with AI (Part 1)

This is part one of the project. In this new era of AI, I confess that sometimes I don't feel like... Read More

Author Avatar Alicia Marianne Gonçalves a month ago
News Thumbnail

🐘 TypeScript for PHP? YES, that's possible! And it's not what you think...

It is time to bring opposites together, to stir up these stagnant waters, and to restore an industry... Read More

Author Avatar Kevin 心学 a month ago
News Thumbnail

is-kit Reached 50 Stars ⭐ Here’s How We Use It in Production

Hoi hoi! I'm @nyaomaru, a frontend engineer who is trying to lose weight. 🐖🙀 I maintain a type... Read More

Author Avatar nyaomaru 8 days ago
News Thumbnail

Restate's Single Binary vs Temporal's Cluster: When the Lighter Engine Wins

Here is a bet that will save you a lot of arguing: pick your durable execution engine on what you... Read More

Author Avatar Andrii B. 11 days ago
News Thumbnail

Stale infrastructure context is worse than none

The bug that isn't a bug On Tuesday you attach a dead-letter queue to orders-queue. On... Read More

Author Avatar Siddharth Pandey 12 days ago
News Thumbnail

Fixing Exact Package Search Relevance in npmx

This is a submission for DEV's Summer Bug Smash: Clear the Lineup powered by Sentry. ... Read More

Author Avatar L Anil Kumar Singha 20 days ago
News Thumbnail

How I Made JavaScript Execution Visual and Rewindable (DSA View View 👀👀)

Hoi hoi! I'm @nyaomaru, a frontend engineer who was recently knocked off my feet by how good the... Read More

Author Avatar nyaomaru 22 days ago
News Thumbnail

Fixing a Silent Cache Bug in npmx.dev

This is a submission for DEV's Summer Bug Smash: Clear the Lineup. The bug npmx.dev is a... Read More

Author Avatar Tejas Patil 11 days ago
News Thumbnail

You're rethrowing errors and losing context. `Error.cause` fixes that.

Error handling has a quiet problem. You catch an error deep in a call stack, wrap it in something... Read More

Author Avatar Parsa Jiravand a month ago
News Thumbnail

linkedSignal() Writes Back: A Trace Through the Reactive Graph 🔍🚀

Let's be honest: linkedSignal() always had a bit of a split personality. It read beautifully from... Read More

Author Avatar Giorgio Galassi 13 days ago
News Thumbnail

Why Does Every AI Agent Still Look Like `while (true) { ... }`?

Most agent runtimes share the same brittle skeleton. Here's what happens when you replace it with an event log. Read More

Author Avatar tom 2 days ago
News Thumbnail

I tried to compile TypeScript into a native binary with scriptc

TL;DR: I tried to compile the TypeScript 6 compiler into a native binary with scriptc, and I failed... Read More

Author Avatar Remo H. Jansen 21 days ago
News Thumbnail

You still write `finally { resource.close() }`. The `using` keyword does it automatically.

You've written this pattern — or something close to it — many times: const timer =... Read More

Author Avatar Parsa Jiravand a month ago
News Thumbnail

You've been doing Set math by hand. JavaScript finally shipped `.union()`, `.intersection()`, and friends.

You've written some version of this: const intersection = new Set([...setA].filter(x =>... Read More

Author Avatar Parsa Jiravand a month ago
News Thumbnail

How I Stopped 429 Retries from Duplicating Successful Batch Jobs

This article is an English translation of the original Japanese article. This is a submission for... Read More

Author Avatar hiro@ 16 days ago
News Thumbnail

The Button That Sent People to a Blank Form

Every service page on my portfolio ends with the same call to action: a big Start Project button.... Read More

Author Avatar Vicente G. Reyes a month ago
News Thumbnail

Nine green tests and a parser that never worked once

This is a submission for DEV's Summer Bug Smash: Smash Stories powered by Sentry. Two bugs, one... Read More

Author Avatar Asuran 9 days ago
News Thumbnail

The bug that differential fuzzing cannot find

I ported a cron parser from TypeScript to Go and ran 36,000 differential test cases with zero divergence. Then I found a bug that no amount of fuzzing could ever have caught — because the output isn't a function of the input. Read More

Author Avatar Sanjay Kumar Sah 10 days ago
News Thumbnail

MCP Went Stateless: Migrating to the 2026-07-28 Spec (and Proving It Works)

📖 TL;DR The 2026-07-28 spec shipped final on July 28, 2026 (RC locked May 21). It is the biggest... Read More

Author Avatar Rupa Tiwari 21 days ago
News Thumbnail

Is Learning DSA Boring? Let's Use DSA View View 👀👀 (Two Sum, Binary Search, and Bubble Sort)

Hoi hoi! I’m @nyaomaru, a frontend engineer who dislikes crowded places, so I'm planning to take a... Read More

Author Avatar nyaomaru a day ago
News Thumbnail

Sandboxing Patterns for Local AI Agents With Filesystem Access

A while back I wrote about running local AI agents on your own code, and it became the most-read... Read More

Author Avatar Pavel Espitia 24 days ago
News Thumbnail

I Built a Lottery Simulator That Shows You Losing Money for 1000 Years

What I built howtolosemoneyfast.com is a satirical lottery analysis tool. You can simulate... Read More

Author Avatar Christoph Dieck 3 days ago