Artwork

内容由Erik Onarheim and Kamran Ayub提供。所有播客内容(包括剧集、图形和播客描述)均由 Erik Onarheim and Kamran Ayub 或其播客平台合作伙伴直接上传和提供。如果您认为有人在未经您许可的情况下使用您的受版权保护的作品,您可以按照此处概述的流程进行操作https://zh.player.fm/legal
Player FM -播客应用
使用Player FM应用程序离线!

State of TypeScript Linting 2025 | Joshua Goldberg | Ep 29B

41:53
 
分享
 

Manage episode 498791321 series 3642378
内容由Erik Onarheim and Kamran Ayub提供。所有播客内容(包括剧集、图形和播客描述)均由 Erik Onarheim and Kamran Ayub 或其播客平台合作伙伴直接上传和提供。如果您认为有人在未经您许可的情况下使用您的受版权保护的作品,您可以按照此处概述的流程进行操作https://zh.player.fm/legal

Joshua Goldberg (JoshuaKGoldberg.com), creator of typescript-eslint, joins us to discuss the state of linting TypeScript projects in 2025. Which linters should we pay attention to? Why are there so many? What's unique about TypeScript? Josh shares his perspective and covers what to look for in a linter and how best to utilize them in your projects.

Chapters

  • (00:00) - Introducing Josh Goldberg
  • (02:10) - Why Are There So Many Linters?
  • (02:48) - Why Do I Need a Linter With TypeScript, Anyway?
  • (04:13) - Landscape of Linters in 2025
  • (06:56) - How Does TypeScript Linting Actually Work?
  • (08:15) - Creating Type-aware Native Speed Linters
  • (11:06) - What Would the Ideal Linter Look Like?
  • (12:48) - Where is the Bottleneck in Type-aware Linting?
  • (15:15) - Are Native Speed Linters the Answer?
  • (21:03) - Okay, So Which Linter Should I Use?
  • (23:33) - Are There Some Golden Type-aware Rules to Use?
  • (24:44) - Customizing Your Linting Setup
  • (27:05) - Writing Your Own Custom Lint Rules
  • (31:08) - Josh's Recommended ESLint Plugins
  • (34:15) - Future of Linting with Flint
  • (36:37) - Attend SquiggleConf 2025 in Boston

Linters
  • typescript-eslint (stable) – TypeScript, most type-aware lint rules
  • oxlint (stable) – Rust, no type-aware lint rules
  • Biome (stable) – Rust, limited type-aware lint rules in V2
  • tsslint (stable) – TypeScript, integrates with tsserver, custom rules with TS compiler API
  • tsl (new) – tsc plugin that ports a selection of typescript-eslint type-aware lint rules
  • Deno lint (stable) – Rust, subset of ESLint rules, no type-aware lint rules
  • Flint (unstable) – TypeScript, Josh’s fast, friendly linter, still in development
  • tsgolint (prototype) – Go, proof-of-concept experimental TypeScript Native integration

Resources

Where to Find Josh

Sponsored by Excalibur.js
Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.

Music
Seahorse Dreams by Kubbi (Spotify)

  continue reading

54集单集

Artwork
icon分享
 
Manage episode 498791321 series 3642378
内容由Erik Onarheim and Kamran Ayub提供。所有播客内容(包括剧集、图形和播客描述)均由 Erik Onarheim and Kamran Ayub 或其播客平台合作伙伴直接上传和提供。如果您认为有人在未经您许可的情况下使用您的受版权保护的作品,您可以按照此处概述的流程进行操作https://zh.player.fm/legal

Joshua Goldberg (JoshuaKGoldberg.com), creator of typescript-eslint, joins us to discuss the state of linting TypeScript projects in 2025. Which linters should we pay attention to? Why are there so many? What's unique about TypeScript? Josh shares his perspective and covers what to look for in a linter and how best to utilize them in your projects.

Chapters

  • (00:00) - Introducing Josh Goldberg
  • (02:10) - Why Are There So Many Linters?
  • (02:48) - Why Do I Need a Linter With TypeScript, Anyway?
  • (04:13) - Landscape of Linters in 2025
  • (06:56) - How Does TypeScript Linting Actually Work?
  • (08:15) - Creating Type-aware Native Speed Linters
  • (11:06) - What Would the Ideal Linter Look Like?
  • (12:48) - Where is the Bottleneck in Type-aware Linting?
  • (15:15) - Are Native Speed Linters the Answer?
  • (21:03) - Okay, So Which Linter Should I Use?
  • (23:33) - Are There Some Golden Type-aware Rules to Use?
  • (24:44) - Customizing Your Linting Setup
  • (27:05) - Writing Your Own Custom Lint Rules
  • (31:08) - Josh's Recommended ESLint Plugins
  • (34:15) - Future of Linting with Flint
  • (36:37) - Attend SquiggleConf 2025 in Boston

Linters
  • typescript-eslint (stable) – TypeScript, most type-aware lint rules
  • oxlint (stable) – Rust, no type-aware lint rules
  • Biome (stable) – Rust, limited type-aware lint rules in V2
  • tsslint (stable) – TypeScript, integrates with tsserver, custom rules with TS compiler API
  • tsl (new) – tsc plugin that ports a selection of typescript-eslint type-aware lint rules
  • Deno lint (stable) – Rust, subset of ESLint rules, no type-aware lint rules
  • Flint (unstable) – TypeScript, Josh’s fast, friendly linter, still in development
  • tsgolint (prototype) – Go, proof-of-concept experimental TypeScript Native integration

Resources

Where to Find Josh

Sponsored by Excalibur.js
Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.

Music
Seahorse Dreams by Kubbi (Spotify)

  continue reading

54集单集

모든 에피소드

×
 
Loading …

欢迎使用Player FM

Player FM正在网上搜索高质量的播客,以便您现在享受。它是最好的播客应用程序,适用于安卓、iPhone和网络。注册以跨设备同步订阅。

 

快速参考指南

版权2025 | 隐私政策 | 服务条款 | | 版权
边探索边听这个节目
播放