Files
nextjs-template/ai/nextjs-style-guide/applied/biome.md
S.Gromov f2358da397 docs: добавить стайлгайд nextjs-style-guide в репозиторий
- Добавлена документация SLM-архитектуры, базовых правил и прикладных разделов
- Добавлены разделы: стили, SVG-спрайты, шаблоны генерации, PostCSS, REST, Realtime
- Удалены устаревшие файлы (спрайты, скрипты, стили из app/)
2026-04-30 19:32:10 +03:00

3.1 KiB
Raw Blame History

title, description, keywords
title description keywords
Biome Установка и настройка линтера-форматтера в новом проекте.
biome
линтер
форматтер
lint
format
biome.json
@biomejs/biome
замена eslint
замена prettier

Biome

Установка и настройка линтера-форматтера в новом проекте.

Требования

  • Node.js 18+.
  • Проект без установленного ESLint и Prettier (они конфликтуют с Biome).

Установка

  1. Установить пакет:

    npm install --save-dev --save-exact @biomejs/biome
    
  2. Инициализировать конфиг:

    npx @biomejs/biome init
    

    В корне появится biome.json с дефолтными настройками.

  3. Привести biome.json к стандартному виду — добавить override для *.css (см. «Стандартный biome.json»). Делается сразу после init, до первого запуска lint/check.

  4. Добавить скрипты в package.json:

    {
      "scripts": {
        "lint": "biome lint .",
        "format": "biome format --write .",
        "check": "biome check --write ."
      }
    }
    
    Скрипт Что делает
    lint Проверка правил без правок
    format Автоформатирование всех файлов
    check Lint + format + organize imports в один проход (основная команда)

Стандартный biome.json

Дефолтный biome.json, созданный biome init, кастомизируется ровно одним блоком — overrides для *.css с отключённым правилом suspicious/noUnknownAtRules. Этот override обязателен по умолчанию во всех проектах, независимо от того, подключены ли уже стили: проектный CSS-стек использует @custom-media и другие нестандартные at-правила, которые Biome не распознаёт; без override npm run lint падает.

Фрагмент, который добавляется в biome.json:

{
  "overrides": [
    {
      "includes": ["**/*.css"],
      "linter": {
        "rules": {
          "suspicious": {
            "noUnknownAtRules": "off"
          }
        }
      }
    }
  ]
}

Если в biome.json уже есть массив overrides — добавить элемент в него; не дублировать массив.

Прочая настройка правил Biome — отдельная задача, не входит в стандартный канон.

Интеграция с VS Code

Расширение biomejs.biome и автоформатирование при сохранении настраиваются в VS Code.