这里记录每周值得分享的科技内容,周五发布。 本杂志开源,欢迎投稿。另有《谁在招人》服务,发布程序员招聘信息。合作请邮件联系(yifeng.ruan@gmail.com)。 封面图 杭州西站附近的余杭...
The “linear()” timing function is a game-changer; it allows us to model physics-based motion right i...
Nuxt 4.2 is out - with experimental TypeScript plugin support, better error handling in development,...
这里记录每周值得分享的科技内容,周五发布。 本杂志开源,欢迎投稿。另有《谁在招人》服务,发布程序员招聘信息。合作请邮件联系(yifeng.ruan@gmail.com)。 封面图 北京门头沟区的千年...
Next.js 16 includes Cache Components, stable Turbopack, file system caching, React Compiler support,...
错误处理有不同的方式。 JavaScript 和 Python 是抛出异常, Rust 语言是变相抛出异常。 C 语言和 Go 语言则是返回一个错误值,你必须判断该值是否为 -1 或空值。 我一直想...
The joys of vibecoding....
在 Rust 中使用类型体操实现编译期安全的 Builder 模式。...
Next.js 16 beta includes stable Turbopack, file system caching, React Compiler support, smarter rout...
From handles to hosting....
通过一些例子,从更抽象的维度聊聊性能优化...
The protocol is the API....
In September, I had the privilege of being able to attend NixCon 2025 in Rapperswil-Jona, Switzerlan...
CSS has been on fire lately, with tons of great new features. @starting-style is an interesting one;...
Nuxt UI v4 unifies Nuxt UI and Nuxt UI Pro into one powerful, completely free library. With over 110...
matplotlib -- the de-facto library of plotting in Python. seaborn -- the golden tool for statistical...
A little while ago, I was trying to animate an element’s background color, so that it cycled through...
Nuxt 4.1 is out - bringing enhanced build stability, better development experience, and powerful new...
Programming with proofs....
AI 时代,我们写作的意义是什么?...
Next.js 15.5 includes Turbopack builds in beta, stable Node.js middleware, TypeScript improvements, ...
SVG gives us many different primitives to work with, but by far the most powerful is the element. ...
What is the type of 2 + 2 = 4?...
探索终端的历史,以及各种效果的实现方式...
A taste of Lean....
Nuxt 3.18 is out - bringing v4 features to v3, improved accessibility, better browser dev tooling in...
SVGs are one of the most remarkable technologies we have access to on the web. They’re first-class c...
Nuxt 4.0 is here! A thoughtful evolution focused on developer experience, with better project organi...
Next.js 15.4 includes updates to performance, stability, and Turbopack compatibility....
解密 Swift Concurrency 中的隔离究竟是什么东西。...
A lightweight, privacy-focused widget to gather your feedback on Nuxt documentation, built with Driz...
I heard you like linting....
Personal update post....
CSS Keyframe animations are so much more powerful than most developers realize. In this tutorial, I’...
A layered module system....
We have some exciting news about the roadmap to Nuxt 4, including a new timeline and what to expect ...
Quoting for modules....
...
One of the most perplexing and befuddling things in CSS for me, for many years, was the behaviour of...
...
Nuxt 3.17 is out - bringing a major reworking of the async data layer, a new built-in component, bet...
How many HTTP requests do you think Corepack makes when you run corepack use pnpm to use the latest ...
Learn TypeScript cursor-rules for AI development. Covers best practices, JSDoc, structure. Different...
When OpenAI released GPT-4 back in March 2023, they kickstarted the AI revolution. The consensus onl...
Next.js 15.3 includes Turbopack for builds, new client instrumentation and navigation hooks, and mor...
...
...
...
In last year’s macOS Sequoia release, one change attracted a lot of attention: the new periodic conf...
...
Nuxt UI v3 is out! After 1500+ commits, this major redesign brings improved accessibility, Tailwind ...
TypeScript announced a full rewrite of TypeScript in Go. In testing, this rewrite has achieved a 10x...
Nuxt 3.16 is out - packed with features and performance improvements...

The coloring problem in modern programming, and a proposal of a new approach...
Learn about how to build APIs with Next.js....
Next.js 15.2 includes updates for debugging errors, metadata, Turbopack, and more....
I spent the past few weeks packing as many easter eggs as I could into my latest project, and in thi...
Let's move on to ESM-only...

Container queries expand the universe of designs that can be implemented, giving us whole new superp...
TypeScript 5.8's new erasableSyntaxOnly flag enforces pure type annotations by disabling enums, name...

Proposal for an extended Semantic Versioning called Epoch SemVer to provide more granular versioning...
Learn more about the API design and benefits of 'use cache'...
...
TypeScript is coming to Node 23. Let's break down what that means....
Next.js 15.1 introduces React 19 stable support, improved error debugging, new experimental authoriz...
...


Learn about our journey with caching in Next.js App Router....
To quote myself in a most recently yet-to-be-published paper: 💪 The ability of deep neural networks...
Ever since switching to Ghostty, my Home Manager activation has stopped printing its headers as cyan...
Learn how to extract the type of an array element in TypeScript using the powerful `Array[number]` t...
Learn how to publish a package to npm with a complete setup including, TypeScript, Prettier, Vitest,...
Enums in TypeScript can be confusing, with differences between numeric and string enums causing unex...
Is TypeScript just a linter? No, but yes....
It's a massive ship day. We're launching a free TypeScript book, new course, giveaway, price cut, an...
An initiative to support open-source ecosystem by Anthony Fu....

...

On the issue of web fonts, I’ve gone back and forth several times for this website. I’ve used IBM Pl...
