In what I’m telling myself is in no way feature creep, I just added experimental TypeScript support to Kitten in a dev branch.
I’m actually surprised how easy it was to do. Given I’m already using esbuild to create the Kitten bundle and already using a custom module loader, the change was basically making esbuild a dependency instead of a dev dependency, lazily transforming .ts files in the loader, and updating a few places in the code to ensure that you can use .ts as an extension in special Kitten extensions like .page.js, .post.js, etc. (so now you can have page.ts, post.ts, etc.)
Everything works the same way it does with TypeScript as it does with JavaScript – there’s no scaffolding or any additional workflow required.
For obvious reasons, I won’t be deploying this at end of day Friday but, hopefully, along with the major breaking change to the stateful component API, I plan to next week.
More details in the work-in-progress change log:
https://codeberg.org/kitten/app/src/branch/stateful-components-api-breaking-change/CHANGELOG.md#2026-04
💕
#Kitten #SmallWeb #SmallTech #NodeJS #JavaScript #TypeScript #web #dev