Skip to content

Что такое Oxc?

/oʊ ɛks siː/

Oxidation Compiler — набор высокопроизводительных инструментов для JavaScript и TypeScript на Rust.

Oxc входит в видение VoidZero единого быстрого JS-тулчейна. Он лежит в основе Rolldown (будущего бандлера Vite) и следующего поколения сверхбыстрых инструментов разработки, которые хорошо стыкуются друг с другом.

* Окисление — химический процесс, в результате которого образуется ржавчина (rust)

Скорость по всему стеку

Oxc оптимизирует производительность всего контура: разбор, резолв модулей, линтинг, форматирование, трансформации и минификация.

Философия

Несколько основных принципов.

Производительность — это фича

Скорость — часть продукта. Быстрые инструменты ускоряют локальный цикл и снижают стоимость CI. Регрессии производительности считаем багами.

Один тулчейн, общие кирпичики

Это набор инструментов: линтер, форматтер, парсер, трансформер, минификатор и резолвер делят общие компоненты. Меньше дублирования и более согласованное поведение.

Корректность и явные границы

Цель — предсказуемость и корректность. Если поведение отличается от других инструментов, это должно быть описано. Совместимость — осознанная фича.

Практичный DX

Упор на реальные проекты: разумные умолчания, понятная конфигурация и стабильный вывод.

Что входит в состав

Готовые утилиты и переиспользуемые блоки компилятора:

  • Oxlint — очень быстрый линтер для JavaScript и TypeScript с ориентацией на экосистему ESLint.
  • Oxfmt — очень быстрый форматтер с целью совместимости с Prettier.
  • Parser — быстрый парсер JS и TS с AST для инструментов.
  • Transformer — быстрые трансформации TS, JSX и современного JavaScript.
  • Minifier — быстрая минификация для production.
  • Resolver — быстрый резолвер модулей для JS и TS.

Инструменты можно использовать по отдельности или как единый конвейер.

Кому подойдёт Oxc

  • Разработчикам приложений и библиотек, которым нужен максимально быстрый цикл линта и форматирования локально и в CI.
  • Командам платформы и тулчейна, которым нужен быстрый компиляторный фундамент в масштабе.
  • Авторам инструментов, которым нужны быстрые crate или npm-пакеты для JS-тулинга.