TypeScript Coffee

TypeScript Coffee

Welcome to TypeScript Coffee

Your source for the latest news in the TypeScript community

News Thumbnail

What If Your AI Agent Never Had to Leave the Browser? (Demo 🚀)

I haven't written anything lately because, honestly, I just didn't have the headspace for it. There... Read More

Author Avatar Sylwia Laskowska 22 days ago
News Thumbnail

How Do We Extract the “Why” from a PR into a CHANGELOG with Jev? 🤔

Hoi hoi! 👋 I'm @nyaomaru, a frontend engineer currently building an AI-assisted CHANGELOG generator... Read More

Author Avatar nyaomaru 2 days ago
News Thumbnail

TypeScript Compiler API: Preserving Child Node Narrowing in Reusable Type Guards 🔧

Hoi hoi! 👋 I'm @nyaomaru, a frontend engineer exploring new possibilities with Jev 😸 (I'm also... Read More

Author Avatar nyaomaru 12 days ago
News Thumbnail

Why Your TypeScript Code Still Crashes in Production

A practical visual guide to the TypeScript mental model. Discover why types vanish at runtime, how structural typing works, and how to write clean, type-safe code that never crashes in production. Read More

Author Avatar S M Tahosin 6 days ago
News Thumbnail

Your Type Guard Can Silently Drift from Your TypeScript Type 🔧

Hoi hoi! 👋 I'm @nyaomaru, a frontend engineer just back from a short vacation on Texel, a small... Read More

Author Avatar nyaomaru 19 days ago
News Thumbnail

Migrating a Real TypeScript OSS Library from tsup to tsdown 🔧

The config migration was small. Preserving the package contract was the interesting part. Hoi hoi!... Read More

Author Avatar nyaomaru 5 days ago
News Thumbnail

"we should go out this weekend": I built a Discord member that holds the clock until we're outside

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass TL;DR.... Read More

Author Avatar Arqam Waheed a day ago
News Thumbnail

Jev vs Claude: Who Wins?

I did not need Jev to beat Claude or Kimi on a benchmark. I needed to know whether I could trust it... Read More

Author Avatar Ben Greenberg 24 days ago
News Thumbnail

NestJS Testing Module: Provider Overrides (with Cheat Sheet)

A complete guide to NestJS's testing module: how overrideProvider really wires mocks, why get() fails on scoped providers, and using useMocker. Read More

Author Avatar Parsa Jiravand 24 days ago
News Thumbnail

AsyncLocalStorage vs Request-Scoped Providers: The DI Trap That Taxes Latency

Here's a logger. It's a dozen lines and it looks completely harmless: request-logger.ts import {... Read More

Author Avatar Andrii B. 11 days ago
News Thumbnail

I missed Go's `if err != nil`, so I built errval for TypeScript

I write mostly TypeScript and some Go. When I switch back from Go, I miss explicit error returns. A... Read More

Author Avatar aymane aallaoui 23 days ago
News Thumbnail

I Turned My Editor Into a Pokémon World That Levels Up When I Actually Ship

Repo: https://github.com/UribeJr/pokedev Most editor pets are wallpaper. Cute? Sure. Connected to... Read More

Author Avatar Enrique Uribe 25 days ago
News Thumbnail

I Killed My Electron App Twice to Test Crash Recovery

"We have crash recovery" is an easy thing to claim. I wanted to know what happens if the process... Read More

Author Avatar Pavel Kazantsev 💎 7 days ago
News Thumbnail

TypeScript 7 Is Up to 10x Faster. Should You Upgrade Now?

Benchmark TypeScript 7 safely, compare real project results, and find compatibility problems before changing your main branch. Read More

Author Avatar 𝗝𝗼𝗵𝗻 11 days ago
News Thumbnail

🪪 Avatar RS: Very Efficient Avatar Components for WASM Frameworks

Bien le bonjour 👋! Every WASM app eventually needs an avatar. Profile pictures, user cards,... Read More

Author Avatar Mahmoud 🦀 15 days ago
News Thumbnail

NestJS Guards: CanActivate, ExecutionContext & Reflector

A complete guide to NestJS guards: how CanActivate, ExecutionContext, and the Reflector decide who reaches your route handler, with a cheat sheet. Read More

Author Avatar Parsa Jiravand 16 days ago
News Thumbnail

How to Build a Task Management App with React & TypeScript

Hey everyone, it's Sadee! If you've ever wanted to build a cool task board where you can move... Read More

Author Avatar Sadee 18 days ago
News Thumbnail

A browser arcade in plain TypeScript: 8 classic games, 35 kB, no framework

Play it: https://minjia-hu.github.io/retro-arcade/ Source:... Read More

Author Avatar Minjia Hu 24 days ago
News Thumbnail

What Protobuf descriptors don't tell you: building a generic mock generator

I built a library that generates mock data for any Protobuf message without per-message code. The schema walk was the easy part — here are the four things that actually bit me. Read More

Author Avatar Maksim 17 days ago
News Thumbnail

Three ways I miscounted my own AI agents, and what the transcripts actually say

Claude Code writes a JSONL transcript for every session, and another one for every subagent it... Read More

Author Avatar Kosta Stamboldzhiev 25 days ago
News Thumbnail

I added a type-checked pipeline operator to TypeScript — including TSX

A proof-of-concept TypeScript compiler with a pipeline operator. I searching testers and... Read More

Author Avatar Peter Vivo 12 days ago
News Thumbnail

Inside TypeScript 7's Go Port: Designing Typed AST Nodes Without a Giant Struct

A step-by-step look at TypeScript 7's Go AST design: shared node data, syntax-specific data, discriminated unions, and a small Go implementation. Read More

Author Avatar puffball1567 25 days ago
News Thumbnail

MedusaJS Dropped the Foreign Keys Between Its Modules: The defineLink Gamble

MedusaJS 2.0 did something that would get a junior engineer's pull request rejected on sight: it... Read More

Author Avatar Andrii B. 20 days ago
News Thumbnail

Never Execute the Translation: Build Language-Safe Slash Commands for Tencent RTC Chat

Build a reproducible TypeScript command boundary for a multilingual social-messaging app. Original messages may create moderation reports, translated text may help people read them, and only a human reviewer may decide the outcome. Read More

Author Avatar LunarDrift 5 days ago