The Sheer Joy of Publishing to JSR | Ep 6
TypeScript.fm - The Friendly Show for TypeScript Developers - A podcast by Kamran Ayub and Erik Onarheim - Tuesdays

Categories:
This week Kamran and Erik unpack JSR, the new open alternative to the npm registry from the folks at Deno. They both published packages and discuss what JSR offers npm doesn't, when to use it, and how it works for both consumers and maintainers.(00:00) - The Sheer Joy of Publishing to JSR | Ep 6 (05:40) - News: TypeScript 5.8 RC (07:45) - News: JSR Open Governance Board (08:59) - News: ESLint Plugin for erasableSyntaxOnly (11:03) - News: Windows Terminal 1.22 Released (15:31) - News: Create React App is Officially Deprecated (17:50) - News: Interop 2025 (19:59) - News: Prettier 3.5 Released With Better TS Support (20:42) - Community Highlight: Wheel of Names TypeScript+React Project Tutorial (21:05) - Community Highlight: Repository Pattern and Clean Architecture with TS and Prism (21:34) - Community Highlight: Welch Canavan on the Sheer Joy of Publishing to JSR (22:01) - Community Highlight: The Good Doctor is On a Roll (22:47) - Community Highlight: Tips for Migrating Node.js Projects to Deno (24:09) - Community Highlight: Sort Object Properties by Type ESLint Plugin (24:30) - Community Highlight: Unloader and Unplugin for TypeScript and oxc (25:21) - Community Highlight: dsbuild Bundler for Deno (25:54) - Deep Dive: What is a Pirate's Favorite Registry? (27:49) - Deep Dive: Differences Between npm and JSR (30:38) - Deep Dive: JSR's Security-First Approach (32:39) - Deep Dive: Consuming JSR Packages in the Browser (35:26) - Deep Dive: Should You Publish to Both npm and JSR? (36:31) - Deep Dive: Can You Publish Private Packages? (38:16) - Deep Dive: JSR's TypeScript-First Approach (42:04) - Deep Dive: Can You Tag Versions? (44:51) - Deep Dive: No API Keys for Publishing (46:58) - Deep Dive: Yanking or Unpublishing a Package (48:16) - Deep Dive: Kamran's Experience Publishing to JSR (53:16) - Deep Dive: Erik's Experience Publishing to JSR (55:06) - Secrets of the Handbook: Decorators (01:00:03) - Cool Stuff: Write Vanilla CSS in TypeScript (01:00:32) - Cool Stuff: Signals in Lit (01:01:35) - Cool Stuff: Train Your vim Muscle Memory (01:01:52) - Cool Stuff: AreTheTypesWrong.com (01:02:44) - Cool Stuff: Homura Ham's Hamster Maze Videos (01:05:10) - Bonus: JSR ASMR (?!) Week of February 10, 2025TypeScript 5.8 RC Released -- Notably, the checked return expressions was walked back 🥹 But, it includes require(esm) support.Deno announced the JSR Open Governance BoardWarn or emit lint errors if your TypeScript contains erasable syntax with Josh Goldberg's new ESLint pluginWindows Terminal 1.22 released with support for Sixels graphicsNode 20 got require(esm) support backported.PSA: Node 18 EOL is April 30, 2025React team officially deprecates Create React AppBrowser vendors met to discuss which APIs to implement between them at Interop 2025Prettier 3.5 released with better TS supportAstro 5.3 has better overall performance and Netlify supportCommunity HighlightsTutorial: FreeCodeCamp build a React and TypeScript Wheel of Names projectVideo: Repository pattern and clean architecture with TypeScript / Prism (h/t Alex Rusin)Blog post: The Sheer Joy of Publishing to JSR (h/t I. Welsch Canavan)Blog post: Deno on npm: specifiers vs transpiled services like esm.shVia The Good Dr. Axel RauschmayerBlog Post: extracting parts of composite types via `infer`Blog Post: A guide to tsconfig.json (Updated for TS 5.8)Blog Post: TypeDoc: testing code examples in comment docsBlog Post: Mapped TypesDiscussion: dayjay migrated all their Node.js projects to Deno. What did they learn?Tools: Nir Tamir created a TS ESLint rule for sorting object properties by typeTools: Kevin Deng is working on Unloader & UnpluginTools: A new Deno Bundler (dsbundle) Deep Dive: JSRJSR, an open source npm alternativeJSR's Provenance Attestation for verificationZero-config GitHub publishingDoesn't yet support private publish (but there's a workaround)No support in Artifactory yetJSR will warn you of slow typesKamran published ts-has-guards for guarding `Map.has` and related APIsErik published Excalibur's ECS core code for funJSR will score your packageNo scope squatting (or selling)!Secrets of the HandbookDecorators2ality's guide on decoratorsTC39 updates presentationoxc is working on support for modern and legacyLinksKat