Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Biome: The community successor of Rome!
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
nissy-dev
September 06, 2023
Technology
0
290
Biome: The community successor of Rome!
Nihonbashi.js #7 (9/6) での発表資料
nissy-dev
September 06, 2023
Tweet
Share
More Decks by nissy-dev
See All by nissy-dev
Deep dive into Biome in JSConf 2023
nissydev
7
6k
学生最後の年に、 3ヶ月間のOSS開発をした話 / GSoC 2020
nissydev
0
140
Other Decks in Technology
See All in Technology
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
4
790
SRE NEXT 2026 CfP レビュアーが語る聞きたくなるプロポーザルとは?
yutakawasaki0911
0
150
決済サービスを支えるElastic Cloud - Elastic Cloudの導入と推進、決済サービスのObservability
suzukij
1
530
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
3
1.7k
ナレッジワークのご紹介(第88回情報処理学会 )
kworkdev
PRO
0
150
LINE Messengerの次世代ストレージ選定
lycorptech_jp
PRO
19
7.7k
[AEON TECH HUB #24] お客様の長期的興味の理解に向けて
alpicola
0
130
クラウド × シリコンの Mashup - AWS チップ開発で広がる AI 基盤の選択肢
htokoyo
2
140
Agentic Software Modernization - Back to the Roots (Zürich Agentic Coding and Architectures, März 2026)
feststelltaste
1
230
マルチプレーンGPUネットワークを実現するシャッフルアーキテクチャの整理と考察
markunet
2
210
Datadog の RBAC のすべて
nulabinc
PRO
3
400
AWS DevOps Agent vs SRE俺 / AWS DevOps Agent vs me, the SRE
sms_tech
3
480
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
120
The agentic SEO stack - context over prompts
schlessera
0
680
My Coaching Mixtape
mlcsv
0
68
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Invisible Side of Design
smashingmag
302
51k
What does AI have to do with Human Rights?
axbom
PRO
1
2k
Optimizing for Happiness
mojombo
378
71k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
97
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
69
A Modern Web Designer's Workflow
chriscoyier
698
190k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Test your architecture with Archunit
thirion
1
2.2k
Transcript
The community successor of Rome!
自己紹介 Daiki Nishikawa GitHub (nissy-dev) X (@nissy_dev) にっしーと読んでもらえると嬉しいです Cybozu のフロントエンドエンジニア
Biome のコアメンバー
今日話すこと これまでの Rome Rome を forkした経緯 Biome の今後
フロントエンド開発に必要なツールチェーンを統合しようというプロジェクト bundler, linter, formatter, test runner... 各ツールの設定が大変なので、統合し開発者体験を向上したい Yarn/Babel を作った Sebastian
さんが開発をはじめた Rome の始まり
2021/3 2022/4 2020/8 2021/9 2022/10 OSS として 開発を本格化 4.5 million
USD を資金調達し、 Rome Tools, Inc を設立 Rust でコードを 全て書き直す決断 Rust で開発をはじめてから 初の formatter のリリース formatter の stable 化と linter のリリース 昨年までの Rome
2021/3 2022/4 2021/9 2022/10 Rome Tools, Inc の想定していたタイムライン beta 1.0
の リリース 参考資料: https://drive.google.com/file/d/1gOUJshwbJpxmrqLjOmrpTCKjBWT6dp7Y/view 事業の 立ち上げ ファースト リリース ユーザー 1万人 クラウド ファンディング 2020/8 OSS として 開発を本格化
今年の1月に資金ショートが発生 給料が支払われなくなったことを理由に、2人のコアメンバーが会社を辞める Micha Reiser さん → Astral (Python の linter
の開発) Emanuele Stoppa さん→ Astro (コンパイラの開発) Emanuele Stoppa さんを中心としたコミュニティーベースの開発が始まる Emanuele Stoppa さんが2月中旬から開発を再開 自分も含め何人かがコアメンバーに招待され、開発が本格化 3月と5月にコミュニティ主体のリリースも行った
コミュニティベースでの開発の問題点 開発に必要な権限の移譲が不可能だった 権限を持っている Sebastian さんとどうやっても連絡が取れない discord, npm, VSCode... ライセンスの所属が Rome
Tools, Inc のまま 会社が存続しているかどうかが分からず、コードの帰属が曖昧 Open Collective などの funding も始められない
Rome を fork して Biome を発足 “Bis” + “Rome” →
“Biome” ツールチェーンの統合という Rome の哲学はそのまま受け継ぐ Biome の発足
JSON 内のコメントへの対応 tsconfig.json や JSONC ファイルなども format できるように Prettier でサポートされている
formatter オプションの追加 JSX quotes style・arrow function parenthesiss の追加 Angular/NestJS ユーザー向けの decorator に関する構文の対応 class method parameter decorators のサポート biome lint コマンドの追加 TypeScript 5.2 の対応 同時に v1 のリリース
今後の開発 マイルストーンは明確に決めてない 5人のコアメンバーが注力しそうなところ (あくまで自分の推測) Emanuele Stoppa さん→ Transpiler Denis Bezrukov
さん, nissy-dev → CSS の parser Victorien Elvinger さん, unvalley さん→ Linter の安定化 ちなみに unvalley さんは、会場にいらしているはず 🙌
Biome は Rome の意思を受け継いで これからも開発を進めていきます コントリビュートしてみたい人は ぜひ声かけてもらえると!
新しい Lint ルールの追加も welocome です! Rust を書いてみたい人におすすめです ドキュメントが手厚く、開発者体験も良い Linter を追加するときのドキュメント
実装の雛形が自動で生成されるので、ロジックの実装に集中できる ノードの操作に関する API が直感的で書きやすい 親ノードも node.parent() で簡単に取得できる 興味ある人は issue をみてもらえると→ help wanted / good first issue Appendix: コントリビュートしてみませんか?