Finds all external file dependencies from a TypeScript file path.
@11ty/dependency-tree-esm@2.0.4
Finds all JavaScript ES Module dependencies from a filename.
software complexity sells via developer ego
happy holidays!
Just deleted a bunch of testing boilerplate in this repo after @vitest.dev added `import.meta.resolve` support 🏆
I think https://github.com/zachleat/import-module-string is one of the best things I’ve built this year (even if no one else does 😅)
Writing database queries is too close to the metal. Best practices don’t work! It’s time to make SQL enterprise-scale with utility classes.
Good thread from a good person in a tough situation ❤️ I’ll keep using and believing in Firefox as long as they employ folks like this.
Something that hasn't been made clear: Firefox will have an option to completely disable all AI features.
We've been calling it the AI kill switch internally. I'm sure it'll ship with a less murderous name, but that's how seriously and absolutely we're taking this.
…
— Firefox for Web Developers (December 18, 2025 at 12:12:57 PM UTC)
Curious how to use Node.js’s new Type Stripping feature for TypeScript compatibility with Eleventy? We have you covered: https://www.11ty.dev/docs/languages/typescript/#configuration
if you see https://scraper.buffer.com/debugger can you tell them I have beef with them
@11ty/logo@3.0.0
11ty logo built for a browser.
a one-way street can also be a two-way street with the right attitude
“a one-way mirror, also called two-way mirror…” — https://en.wikipedia.org/wiki/One-way_mirror
Watched 12 Angry Men last night and it had me wondering if it was legal in the USA in 1957 for women to serve on a jury — looks like it was state-by-state starting with Wyoming in 1870 all the way up to Mississippi in 1968.
CommonJS? ESM? TypeScript? Wait, even CommonJS TypeScript?? Eleventy can run them all.
https://www.11ty.dev/docs/cjs-esm/
Which should you choose? It depends! The social-media sized answer is: ESM 😅
leadership wants an everything app
users want an everything bagel
Tiny bug fix release of `<table-saw>`: https://github.com/zachleat/table-saw/releases/tag/v1.0.7
@zachleat/table-saw@1.0.7
A small web component for responsive <table> elements.
RE: https://chaos.social/@FlohEinstein/115727872442211456
Y’all are too wild 😅
👍✅ Runtimes supporting CommonJS and ESM
👎❌ Modules dual publishing both CommonJS and ESM
Deno both supports and absolutely does not support CommonJS 😅
1️⃣ https://docs.deno.com/examples/cjs_to_esm_tutorial/
2️⃣ https://deno.com/blog/commonjs-is-hurting-javascript
3️⃣ https://docs.deno.com/runtime/fundamentals/node/#commonjs-support

a dad hat that says “corny on main”
Currently wondering what it feels like to work so hard on an open-licensed typeface only to have it co-opted by very terrible and very famous people as part of their core brand identity.
Thankful to @jacklorusso for their 11ty docs contribution detailing how to use @deno_land’s new `dx` command with Eleventy: https://www.11ty.dev/docs/javascript-runtime/#deno
*gently opens up the December 15th flap on my react CVE advent calendar*
Coming to a canary near you: adding support for Node’s Module Compile Cache feature (existing Node 20+ minimum is unchanged but this is featured tested and available in Node 22.8+ only).
what if ___ (good thing) but instead, ___ (worse thing)
one of the 5 stages of grief is denial of service
ok fine but can react server components show emotional vulnerability too
Eleventy Core Dependency Watch (2025 Edition)
https://www.11ty.dev/blog/dependency-watch/
v4.0.0.alpha.6 (compared with v3) reduces:
1️⃣ dependencies 21.6%
2️⃣ 3rd-party dependencies 27.6%
3️⃣ node_modules weight 33.3%
is software getting better?
New core pre-release: v4.0.0-alpha.6
https://github.com/11ty/eleventy/releases/tag/v4.0.0-alpha.6
Note: this includes a new `@11ty/nunjucks` package.
Eleventy Core Dependency Watch (2025 Edition)
@11ty/eleventy@4.0.0-alpha.6
A simpler static site generator.
@11ty/client@4.0.0-alpha.6
Run Eleventy in your browser.
@11ty/recursive-copy@5.0.0
A fork of `recursive-copy`: Simple, flexible file copy utility
I’d like to revise and say that my hotter take is that every VC-funded *open source* software project should report both runway amounts and how many active FTE they have on payroll
my hot take is that I think every VC-funded software project should report how much runway they have left every month
@11ty/eleventy-dev-server@3.0.0-alpha.6
A minimal, modern, generic, hot-reloading local web server to help web developers.
@11ty/node-version-check@1.0.1
Show a friendly error message when using an incompatible with Node version
TIL about Carlito, a typeface (derived from Lato) made by Łukasz Dziedzic — the same type designer that made Lato!
@11ty/node-version-check@1.0.0
Show a friendly error message when using an incompatible with Node version
@11ty/eleventy-utils@2.0.8-alpha.1
Low level internal utilities to be shared amongst Eleventy projects
@zachleat/noop@1.0.7
A minimal module to test importing in other tools.
Take my npm tokens, take my land,
Take me where I cannot stand.
I don't care, I'm still free,
You can't take the sky from me.
I wish dependencies would stop embedding their own arguments parser in a package that didn’t need a CLI to begin with.
Eleventy has *three* different dependencies with pretty hefty (and outdated) CLI argument parser libraries 😭
Is there an `overrides`-style feature that works for libraries? (afaik this feature is only for app-level code)
@11ty/nunjucks@4.0.0-alpha.1
A powerful templating engine with inheritance, asynchronous control, and more (jinja2 inspired)
we have liftoff

No more tokens Locking down NPM Publish Workflows
excited for @scope nervous for @creep
you’re very popular on linkedin (DEROGATORY)
Strangers by *SPRING (I am so sorry)
if you’re cold, your dependency is cold — bring them inside
I don’t know if this is a good decision but it also feels long overdue

Strangers by String is #BuiltWithEleventy by @likethecolour.red and @strange.website 🏆🏆🏆
She’ll never see this because she’s too healthy to be chronically online but I am so thankful to my partner — a genuinely incredible person that I am so happy and privileged to be married to for the last 16 years.
Every truly great thing I have in my life is because of her and every good thing I’ve been given credit for in my life is also because of her.
Only 34 years left until our 50th anniversary ❤️
New core pre-release: v4.0.0-alpha.5
Full release notes: https://github.com/11ty/eleventy/releases/tag/v4.0.0-alpha.5
tfw your web site is static

happy holidays y’all! 🎄

@11ty/eleventy@4.0.0-alpha.5
A simpler static site generator.
@11ty/client@4.0.0-alpha.5
Run Eleventy in your browser.
@11ty/eleventy-dev-server@3.0.0-alpha.5
A minimal, modern, generic, hot-reloading local web server to help web developers.
React has taken down Cloudflare twice now so is this a good time to talk about Enterprise scale or is it still too soon
if you look in the footer of https://blog.fontawesome.com/ and tap on the Font Awesome flag you’ll see a variant of this component made to work with Font Awesome icons (and reusing the colors from the header image of the blog post too: https://blog.fontawesome.com/blog-awesome-to-11ty/#colors) 🥰
📮🔒 New post on the blog:
Securely publishing our packages to npm
It’s decorative <snow-fall> season, friends: https://www.zachleat.com/web/snow-fall/
Maintenance update: to simplify our docs footprint (and in reaction to deployment retention policies), we will maintain historical versioned branches of our docs for *major* versions only:
https://v2.11ty.dev/
https://v1.11ty.dev/
https://v0.11ty.dev/
Previously hosted minor version subdomains (e.g. https://v0-12-0.11ty.dev) will redirect to their respective major version.
Appreciate y’all!
DNS stands for “DO NOT meSs with this or you’re going to have a bad time”
📮🔒 New post on the blog
No more tokens! Locking down npm Publish Workflows
https://www.zachleat.com/web/npm-security/
Includes a checklist of 8 important things you can do to improve your security footprint when using GitHub and npm.
For interested folks, here’s the React PR that fixes CVE-2025-55182 affecting React Server Components (CVSS 10.0 Critical Severity): github.com/facebook/rea...
Relevant blog post: react.dev/blog/2025/12...
For interested folks, here’s the React PR that fixes CVE-2025-55182 affecting React Server Components (CVSS 10.0 Critical Severity): https://github.com/facebook/react/pull/35277
Blog post: https://react.dev/blog/2025/12/03/critical-security-vulnerability-in-react-server-components
> Even if your app does not implement any React Server Function endpoints it may still be vulnerable if your app supports React Server Components.
TIL about https://jsx.lol/ from @db which seems to be carrying the torch forward from my blog post a few years back: https://www.zachleat.com/web/react-criticism/
I wanted to do this for an @11ty.dev conference but haven’t had the bandwidth yet 🫠
Free idea:
A developer conference (née job fair) where all of the speakers are folks that aren’t employed and are looking! Speakers would really benefit from the authority that conference speaking provides and employers looking to hire can send their own devs in to learn (and recruit)!
Securely Publishing our Packages to npm
As a security precaution I had previously configured every single 11ty repository to have its own single-package-scoped npm token (there were probably ~30 or so), so this is a lovely improvement 😅
This took a lot of tedious work but I’m now npm token free, weee!
The entire @11ty.dev ecosystem is now using Trusted Publishers (docs.npmjs.com/trusted-publ...)

@11ty/posthtml-urls@1.0.2
PostHTML plugin for transforming URLs. A fork of posthtml/posthtml-urls.
@11ty/font-awesome@1.0.1
Optimized per-page tree-shaken SVG spritesheets for Eleventy.
@11ty/create@1.0.9
A little command line utility to create files in a cross-platform way.
@11ty/eleventy-upgrade-help@3.0.2
Helper plugin when upgrading your Eleventy project to a new major version.
@11ty/import@1.0.16
Utility to import content from multiple services (and a CLI, too)
@11ty/eleventy-navigation@1.0.5
A plugin for creating hierarchical navigation in Eleventy projects. Supports breadcrumbs too!
@11ty/recursive-copy@4.0.3
A fork of `recursive-copy`: Simple, flexible file copy utility
@11ty/parse-date-strings@2.0.6
Parsing content date strings in Eleventy core.
@11ty/image-color@1.0.8
Small utility to efficiently fetch the colors from an image.
@11ty/eleventy-dev-server@3.0.0-alpha.4
A minimal, modern, generic, hot-reloading local web server to help web developers.
@11ty/dependency-tree-esm@2.0.3
Finds all JavaScript ES Module dependencies from a filename.
@11ty/dependency-tree@4.0.1
Finds all JavaScript CommmonJS require() dependencies from a filename.
@11ty/eleventy-plugin-rss@3.0.0-alpha.3
Generate an Atom, RSS, or JSON feed with Eleventy.
@11ty/eleventy-fetch@5.1.1
Fetch and locally cache remote API calls and assets.
today I woke up excited to do business excellence
I have been informed (via email) that Zach Leat has been nominated for the Business Excellence Awards 2026 — please clap 😅
@11ty/is-land@5.0.1
A framework independent partial hydration islands architecture implementation.
The @smashingmagazine.com Email Newsletter on Web Performance this week was great!
This year we’re thankful for everyone that took a few minutes to fill out our 8 question survey (with 5 multiple choice questions 😅).
If you haven’t yet, we are still accepting submissions! It will help us prioritize the future of our project! Appreciate y’all!
for black friday I took 20% of the words off of my blog but I won’t tell you which ones
@11ty/package-bundler@0.5.4
Internal package to build bundles (using esbuild) for use in various environments
Update: at time of writing Eleventy core (0.x, 1.x, 2.x, 3.x, 4.x prereleases) and our official plugins are still unaffected.
(Compromised package count was updated to 834 from 533 in the latest @SocketSecurity update: https://socket.dev/blog/shai-hulud-strikes-again-v2)