131 lines
5.1 KiB
Markdown
131 lines
5.1 KiB
Markdown
# CampFire Critics
|
||
|
||
CampFire Critics — это современное веб-приложение для управления медиаконтентом и пользовательскими отзывами, построенное на React, Vite и Tailwind CSS. Приложение предоставляет богатый функционал для работы с медиа, рецензиями и пользовательскими профилями.
|
||
|
||
## Основные возможности
|
||
|
||
* **Управление медиаконтентом**
|
||
- Просмотр и поиск фильмов, сериалов и игр
|
||
- Детальная информация о медиа с рейтингами и отзывами
|
||
- Карусель и карточный интерфейс для удобной навигации
|
||
- Анимированные переходы и интерактивные элементы
|
||
|
||
* **Система рецензий**
|
||
- Создание и редактирование рецензий
|
||
- Рейтинговая система с визуализацией
|
||
- Последние рецензии в бегущей строке
|
||
- Интеграция с профилями пользователей
|
||
|
||
* **Пользовательские профили**
|
||
- Персонализированные профили с аватарами
|
||
- История рецензий и активности
|
||
- Рейтинг пользователей
|
||
- Настройки профиля
|
||
|
||
* **Административные функции**
|
||
- Модерация контента
|
||
- Управление медиа
|
||
- Административная панель
|
||
- Статистика и аналитика
|
||
|
||
## Технологический стек
|
||
|
||
* **Фронтенд**
|
||
- React 18+
|
||
- Vite
|
||
- Tailwind CSS
|
||
- Framer Motion для анимаций
|
||
- React Router для маршрутизации
|
||
- React Icons для иконок
|
||
|
||
* **Бэкенд**
|
||
- PocketBase для аутентификации и базы данных
|
||
- REST API
|
||
- Файловое хранилище
|
||
|
||
* **Инструменты разработки**
|
||
- ESLint для линтинга
|
||
- PostCSS для обработки CSS
|
||
- Git для контроля версий
|
||
|
||
## Структура проекта
|
||
|
||
```
|
||
src/
|
||
├── components/ # React компоненты
|
||
│ ├── home/ # Компоненты главной страницы
|
||
│ ├── media/ # Компоненты для работы с медиа
|
||
│ ├── navigation/ # Навигационные компоненты
|
||
│ ├── profile/ # Компоненты профиля
|
||
│ ├── reactbits/ # Переиспользуемые UI компоненты
|
||
│ └── reviews/ # Компоненты для рецензий
|
||
├── contexts/ # React контексты
|
||
├── pages/ # Страницы приложения
|
||
├── services/ # Сервисы и API
|
||
└── utils/ # Вспомогательные функции
|
||
```
|
||
|
||
## Установка и запуск
|
||
|
||
1. **Клонируйте репозиторий**
|
||
```bash
|
||
git clone https://git.campfiregg.ru/CampFire/CampFireCritics.git
|
||
cd CampFireCritics
|
||
```
|
||
|
||
2. **Установите зависимости**
|
||
```bash
|
||
npm install
|
||
```
|
||
|
||
3. **Настройте переменные окружения**
|
||
Создайте файл `.env` в корне проекта:
|
||
```env
|
||
VITE_POCKETBASE_URL=your_pocketbase_url
|
||
```
|
||
|
||
4. **Запустите сервер разработки**
|
||
```bash
|
||
npm run dev
|
||
```
|
||
|
||
5. **Соберите проект для продакшена**
|
||
```bash
|
||
npm run build
|
||
```
|
||
|
||
## Разработка
|
||
|
||
### Основные команды
|
||
|
||
* `npm run dev` - Запуск сервера разработки
|
||
* `npm run build` - Сборка проекта
|
||
* `npm run lint` - Проверка кода линтером
|
||
* `npm run preview` - Предпросмотр собранного проекта
|
||
|
||
### Стиль кода
|
||
|
||
Проект использует ESLint для поддержания качества кода. Основные правила:
|
||
- Использование функциональных компонентов
|
||
- Строгая типизация пропсов
|
||
- Следование принципам чистого кода
|
||
- Комментирование сложных участков кода
|
||
|
||
## Вклад в проект
|
||
|
||
1. Создайте форк репозитория
|
||
2. Создайте ветку для новой функции (`git checkout -b feature/amazing-feature`)
|
||
3. Зафиксируйте изменения (`git commit -m 'Add amazing feature'`)
|
||
4. Отправьте изменения в форк (`git push origin feature/amazing-feature`)
|
||
5. Создайте Pull Request
|
||
|
||
## Лицензия
|
||
|
||
MIT License. Подробнее см. [LICENSE](LICENSE).
|
||
|
||
## Контакты
|
||
|
||
CampFire Team - [@campfiregg](https://t.me/campfiregg)
|
||
|
||
Project Link: [https://git.campfiregg.ru/CampFire/CampFireCritics](https://git.campfiregg.ru/CampFire/CampFireCritics)
|