Содержание
- Cupple Web Admin
Административная панель управления для платформы Cupple.
- Chats
- Просмотр чатов
- Удаление чата
- React 18.3.1
- TypeScript
- Vite 5.4.1
- Ant Design 5.20.4
- TailwindCSS 4.0.6
- Zustand 4.5.5
- TanStack Query (React Query) 5.66.9
- Axios 1.7.7
- React Router DOM 6.26.1
- Vitest
- React Testing Library
- Jest DOM
- ESLint
- Prettier
- Stylelint
- Husky для pre-commit хуков
- lint-staged
npm run dev # Запуск dev сервера
npm run build # Компиляция TS и сборка проекта
npm run lint # Запуск ESLint npm run lint:ts # Проверка TS файлов npm run lint:ts:fix # Автоисправление TS файлов
npm run test:unit # Запуск unit тестов npm run test:coverage # Проверка покрытия тестами
npm run preview # Предпросмотр сборки npm run check:ts # Проверка типов TypeScript
- Pre-commit hooks для проверки кода
- Pre-push hooks для проверки типов и инкремента версии
- Автоматическое форматирование при коммите
- Строгая проверка TypeScript
Структура следует принципам Feature-Sliced Design для лучшей масштабируемости и поддерживаемости кода.
-
app/
- Конфигурация приложения
- Провайдеры (Router, Query, Theme)
- Глобальные стили
-
entities/
- Основные бизнес-сущности
- Модели данных
- Базовые компоненты сущностей
-
features/
- Функциональные модули
- Реализация бизнес-логики
- Обработчики взаимодействия
-
pages/
- Компоненты страниц
- Роутинг
- Композиция features и widgets
-
shared/
- UI-компоненты
- Утилиты
- Константы
- API клиенты
-
widgets/
- Композитные UI компоненты
- Переиспользуемые блоки интерфейса
{
"compilerOptions": {
// Целевая версия JavaScript
"target": "ES2022",
// Поддержка современных возможностей
"lib": ["ES2020", "DOM", "DOM.Iterable", "ESNext.Array"],
// Модульная система
"module": "esnext",
"moduleResolution": "bundler",
// React настройки
"jsx": "react-jsx",
// Строгая типизация
"strict": true,
// Улучшения разработки
"incremental": true, // Инкрементальная компиляция
"allowJs": true, // Поддержка JS файлов
"noEmit": true, // Без генерации файлов (используется Vite)
// Импорты
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
// Алиасы путей
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"] // Короткий импорт через @
},
// Тестирование
"types": ["vitest", "node", "vitest/globals"]
},
// Файлы проекта
"include": ["./src/**/*.ts", "./src/**/*.tsx"],
"files": ["vite.d.ts"],
"exclude": ["node_modules"]
}- Современный target (ES2022)
- Строгая типизация
- Поддержка React JSX
- Алиас @ для импортов из src
- Интеграция с Vitest для тестирования
- Инкрементальная компиляция