
Biome là công cụ chuẩn hoá lập trình JavaScript và TypeScript mới, viết bằng Rust, ra mắt như một fork thay thế trực tiếp cho ESLint (lint) và Prettier (định dạng). Ra đời từ dự án Rome Tools, Biome hứa hẹn mang lại trải nghiệm dev đơn giản và tốc độ hàng trăm lần nhanh hơn so với kết hợp JavaScript cũ. Bài viết này tổng hợp tính năng, benchmark và cách dời chuyển dự án hiện tại sang Biome một cách an toàn.

Lịch sử hình thành
Dự án ban đầu tên gọi là Rome Tools, khởi xướng bởi đội ngũ của Sebastian McKenzie (tạo ra Babel và Yarn). Rome hứa hẹn thay thế toàn bộ ngăn xếp ESLint + Prettier + bundler trong một binary duy nhất. Tuy nhiên, dự án dừng phát triển vào năm 2023. Cộng đồng sau đó fork lại làm Biome, tập trung vào linting và formatting trước — phần mạnh nhất của Rome ban đầu.
Phiên bản ổn định 2.x hiện đã ra mắt, Biome đang được nhiều dự án production như Next.js, Preact và một số startup adopt dần.
Kiến trúc và tính năng chính
Biome viết hoàn toàn bằng Rust, biên dịch thành một binary duy nhất — không cần cài Node.js hay runtime nào khác. Tính năng nổi bật:
| Tính năng | Mô tả |
|---|---|
| Formatter | Thay thế Prettier, hỗ trợ Prettier config để dễ dời chuyển |
| Linter | 500+ rule, bao gồm cả ESLint rule tương đương |
| Import organizer | Sắp xếp import tự động theo thứ tự |
| Language server | Thời gian thực trong editor qua LSP |
| Vệ sinh dự án | Kiểm tra import thừa, mã chết, security |
Định dạng hỗ trợ đầy đủ JavaScript, TypeScript, JSX, TSX, JSON, CSS và GraphQL. Cấu hình mặc định ra đời mà không cần bật bất kỳ rule nào — đây là chính sách “batteries included” của Biome.

Hiệu năng: 10–35x nhanh hơn
Nhờ Rust, Biome xử lý ngàn file trong thời gian ngắn. Test benchmark công bố trên trang chính thức cho thấy Biome nhanh hơn ESLint + Prettier khoảng 10–35 lần tùy dự án. Đối với CI pipeline build hàng ngàn lần, thời gian lint+format có thể giảm từ vài phút xuống vài giây, cải thiện đáng kể thời gian chờ developer.
Benchmark chi tiết trên repo 1000 file TypeScript thực tế:
- ESLint + Prettier: ~45 giây
- Biome check + format: ~1.3 giây
Điểm mạnh là không cần cache hoặc worker processes phức tạp — binary đơn chạy tuần tự nhanh hơn cả cluster Node.js với multi-process.
Cách dời chuyển từ ESLint + Prettier
Biome cung cấp công cụ migrate trực tiếp:
biome migrate --write-eslint
Lệnh này tự động chuyển đổi file cấu hình ESLint và Prettier sang biome.json. Để adopt dần (gradual adoption), có thể giữ Biome chạy đồng thời với ESLint trong giai đoạn chuyển đổi, rồi dần tắt ESLint khi nắm chắc.
Các bước khuyến nghị:
- Cài Biome:
npm install --save-dev @biomejs/biome - Chạy migrate:
npx @biomejs/biome migrate --write-eslint - Review file
biome.jsonsinh ra, điều chỉnh rule nếu cần - Chạy
biome check .để xem lỗi hiện tại - Tự động sửa:
biome check --apply . - Cập nhật CI pipeline để dùng Biome thay vì ESLint + Prettier
Tại sao chuyển đổi?
Bên cạnh tốc độ, Biome cung cấp trải nghiệm đồng nhất: một công cụ thay thế ba công cụ (lint + format + organize), cấu hình tối thiểu và thông báo lỗi rõ ràng. Đặc biệt phù hợp với dự án monorepo hoặc team muốn chuẩn hoá quy tắc toàn công ty mà không lo xung đột cấu hình.
Ưu điểm thực tế:
- Zero config — chạy ngay
biome checktrên dự án mới, không cần setup - Editor integration — VS Code extension chính thức, hỗ trợ format on save, quick fix
- VCS integration — chỉ check file thay đổi (staged files) trong pre-commit hook
- Output chẩn đoán — lỗi hiển thị rõ file, dòng, cột, giải thích ngắn gọn, có thể click vào rule reference
Hạn chế hiện tại
Tuy nhiên, Biome còn hạn chế: số lượng plugin tùng bằng không lớn như ESLint, chưa hỗ trợ custom rule phức tạp. Nên chuyển đổi khi dự án chưa phụ thuộc sâu vào plugin ESLint riêng biệt.
Các điểm cần cân nhắc:
- Không có ecosystem plugin như
eslint-plugin-react,eslint-plugin-jsx-a11y, v.v. - Một số rule TypeScript nâng cao chưa được port đầy đủ
- Team cần quen với rule names mới (ví dụ:
noUnusedVariablesthay vì@typescript-eslint/no-unused-vars)
Kết luận
Biome đại diện cho thế hệ công cụ dev thế hệ mới: viết bằng ngôn ngữ hệ thống (Rust/Go), binary đơn, hiệu năng cực cao, zero config. Nếu dự án bạn đang chịu đựng thời gian CI chậm do ESLint + Prettier, hoặc muốn đơn giản hoá toolchain, Biome là lựa chọn đáng xem xét ngay hôm nay. Dù vẫn còn trẻ so với ESLint 10 năm tuổi, nhưng tốc độ phát triển và adopt của cộng đồng cho thấy Biome đang trở thành tiêu chuẩn mới cho các dự án JavaScript/TypeScript hiện đại.
Tham khảo thêm: Trang chủ Biome · Hướng dẫn migrate · GitHub Biome
