Плагин добавляет более 300 дополнительных правил ESLint для JavaScript и TypeScript, а также правила для CSS, HTML, JSON, Markdown, SOML, TOML и YAML.
xojs/xo
Линтер JavaScript и TypeScript с настройкой по умолчанию: работает поверх ESLint, задаёт строгие правила и использует встроенный стиль кода.
- Звёзды
- 7,995
- Форки
- 309
- Открытые issues
- 3
- Последний коммит
- 2 месяца назад
Что это?
XO — это консольный линтер для JavaScript и TypeScript, который работает поверх ESLint с набором строгих правил по умолчанию. В проекте он проверяет JS-, TS-файлы и файлы фреймворков, а также HTML, Markdown, JSON и CSS — без необходимости указывать пути к файлам или писать конфиг ESLint. XO подходит командам, которые хотят перестать спорить о стиле кода в pull request и поручить инструменту проверку единых правил.
По умолчанию используются отступы табами, точки с запятой, одинарные кавычки и завершающие запятые. Флагами можно переключиться на пробелы или стиль без точек с запятой. Дополнительные проверки обеспечивают встроенные плагины ESLint, такие как unicorn, import-x, ava и n. Настройки можно изменить в файле xo.config.js или xo.config.ts, который использует формат flat config ESLint. Результаты кэшируются между запусками, а `--fix` автоматически исправляет код.
Для работы XO проект должен использовать ES modules. Проверку файлов для Astro, React, Svelte и Vue обеспечивают отдельные плагины ESLint, а опциональный режим Prettier форматирует код или отключает конфликтующие правила.
Ключевые возможности
- 01Проверка без настройки файлов JS, TS, HTML, Markdown, JSON и CSS.
- 02Встроенная поддержка TypeScript и плагины ESLint, такие как unicorn и import-x.
- 03Автоисправление с помощью `--fix` и открытие файлов с ошибками в редакторе с помощью `--open`.
- 04Простые настройки стиля для отступов и точек с запятой без изменения конфигурации правил.
- 05Опциональное форматирование с Prettier или режим совместимости, отключающий конфликтующие с Prettier правила.
- 06Массовое подавление ошибок с помощью файла eslint-suppressions.json.
Сценарии использования
- Единый стиль кода для всей команды без необходимости писать конфиг ESLint.
- Добавление линтера в новый проект на JavaScript или TypeScript одной командой.
- Проверка проектов на Vue, Svelte, Astro или React с помощью дополнительных плагинов для соответствующих фреймворков.
- Постепенное внедрение более строгих правил в большой существующий проект с помощью подавлений.
Быстрый старт
- 1
Установите XO локально в проект
npm install xo --save-dev - 2
Запустите XO, чтобы проверить проект
npx xo
Что важно знать
- Для работы XO проект должен использовать ESM.
- XO — это оболочка над ESLint, поэтому о проблемах со встроенными правилами следует сообщать в проект ESLint.
- XO придерживается собственного стиля кода: по умолчанию используются табуляция, одинарные кавычки и точки с запятой, если не задать другие настройки.
В подборках
Темы
Частые вопросы
- Что такое xo?
- Линтер JavaScript и TypeScript с настройкой по умолчанию: работает поверх ESLint, задаёт строгие правила и использует встроенный стиль кода. XO — это консольный линтер для JavaScript и TypeScript, который работает поверх ESLint с набором строгих правил по умолчанию. В проекте он проверяет JS-, TS-файлы и файлы фреймворков, а также HTML, Markdown, JSON и CSS — без необходимости указывать пути к файлам или писать конфиг ESLint. XO подходит командам, которые хотят перестать спорить о стиле кода в pull request и поручить инструменту проверку единых правил.
- xo можно использовать бесплатно? Какая у него лицензия?
- xo распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- xo всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в xo — 18 сент. 2026 г..
- Для чего можно использовать xo?
- Единый стиль кода для всей команды без необходимости писать конфиг ESLint. Добавление линтера в новый проект на JavaScript или TypeScript одной командой. Проверка проектов на Vue, Svelte, Astro или React с помощью дополнительных плагинов для соответствующих фреймворков. Постепенное внедрение более строгих правил в большой существующий проект с помощью подавлений.
- Как установить xo?
- Установите XO локально в проект: npm install xo --save-dev Запустите XO, чтобы проверить проект: npx xo
- Где скачать xo?
- Исходный код и инструкции по установке — на GitHub: https://github.com/xojs/xo
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Монорепозиторий инструментов для ESLint: парсер TypeScript, набор правил и плагины для анализа кода.
Форматтер Python-кода, который приводит исходные файлы к настраиваемому стилю с помощью алгоритма компоновки clang-format.
Консольная утилита и плагин для flake8, которые проверяют единообразие настроек в нескольких проектах и автоматически исправляют конфиги.
Линтер и форматтер для JavaScript и TypeScript без настройки вручную: подключает Biome, ESLint или Oxlint с готовыми правилами одной командой.
Расширяемый линтер для ECMAScript/JavaScript, который находит проблемные конструкции в коде и умеет автоматически исправлять многие из них.