Skip to content

falkomerr/fsd-crawler

Repository files navigation

FSD Crawler

Инструмент для анализа зависимостей в проекте и построения схем

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

Установка

npm i -D fsd-crawler

Использование

Добавьте скрипт для запуска

{
  "scripts": {
    "analyze": "fsd-crawler",
  }
}
npm run analyze

После выполнения в указанной директории (по умолчанию - ./dist) будут созданы файлы отчетов:

  • fsd_structure.html - интерактивный HTML-отчет с визуализацией структуры и зависимостей
  • fsd_structure.json - JSON-представление структуры и зависимостей (если включено в конфигурации)

По умолчанию HTML-отчет автоматически открывается в браузере на порту 3123.

Конфигурация

Инструмент поддерживает настройку через YAML-файл. Конфигурационный файл может называться:

  • fsd-crawler.yml
  • fsd-crawler.yaml
  • .fsd-crawler.yml
  • .fsd-crawler.yaml

Файл конфигурации ищется в текущей директории и всех родительских директориях.

Пример конфигурационного файла

# Исходная директория для анализа
srcDir: "."

# Директория для сохранения результатов
outputDir: "./dist"

# Форматы вывода (поддерживаются html и json)
outputFormats:
  - html
  # - json  # Раскомментируйте для включения JSON-экспорта

# Директории, которые нужно исключить из анализа
excludeDirs:
  - node_modules
  - .git
  - dist
  - build
  - coverage

# Запускать ли локальный веб-сервер для просмотра HTML-отчета
serveHTML: true

# Порт для локального веб-сервера
port: 3123

# Пользовательские слои (если указаны, заменяют стандартные)
# Если не указаны, используются стандартные слои FSD
customLayers:
  - app
  - processes
  - pages
  - widgets
  - features
  - entities
  - shared

# Путь к пользовательскому HTML шаблону (необязательно)
# htmlTemplatePath: "./custom-template.html"

Параметры конфигурации

Параметр Тип По умолчанию Описание
srcDir string . Директория с исходным кодом для анализа
outputDir string ./dist Директория для сохранения результатов
outputFormats array ["html"] Форматы вывода результатов
excludeDirs array ["node_modules", ".git", "dist", "build"] Директории, исключаемые из анализа
customLayers array Пользовательские слои FSD (если не указаны, используются стандартные)
htmlTemplatePath string Путь к пользовательскому HTML-шаблону
serveHTML boolean true Запускать ли локальный веб-сервер для просмотра HTML-отчета
port integer 3123 Порт для локального веб-сервера

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published