Open source проект
NextRanger
Строгая инженерная основа для Next.js, где архитектурные решения обеспечиваются инструментами, а не документируются и забываются.
Обзор
NextRanger — это отправная точка, которую я использую для серьёзной frontend-разработки. Её предпосылка в том, что соглашения, с которыми команда согласна, но которые не может обеспечить, со временем разрушаются, поэтому каждое важное правило выражается как правило линтера, тип или падающий тест, а не как абзац в README.
Архитектура
Next.js App Router с Server Components по умолчанию, строгий TypeScript и модульно-ориентированная структура с однонаправленными зависимостями: маршруты зависят от модулей, модули — от общего кода, общий код — от обёрток вендоров, и никогда наоборот. У каждого стороннего пакета ровно одна ответственная обёртка, поэтому обновления и обработка ошибок находятся в одном проверенном файле.
Инженерия
Пользовательский плагин ESLint обеспечивает соблюдение политики слоёв, владения пакетами, компонентов, ограниченных TSX, и покрытия переводами. Vitest и Playwright покрывают модульные, интеграционные, end-to-end, тесты доступности и визуальные тесты, наряду с интернационализацией с поддержкой RTL, CSP на основе nonce и CI-гейтами, запускающими весь набор перед каждым слиянием.
- Роль
- Автор. Спроектировал архитектурную модель, набор пользовательских правил ESLint и гейты качества.
- Категория
- Full-stack
- Стек
- Next.jsReactTypeScriptESLintVitestPlaywrightTailwind CSS
- Язык
- TypeScript