Repolode
xojs

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. 1

    Установите XO локально в проект

    npm install xo --save-dev
  2. 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 обновляется ежедневно.

Похожие проекты

Расширяемый линтер для ECMAScript/JavaScript, который находит проблемные конструкции в коде и умеет автоматически исправлять многие из них.

27,6 тыс.+1 за неделю5,2 тыс.JavaScriptMITАктивно поддерживаетсяОбновлён 19 часов назад