CampFireCritics/README.md
2025-05-14 22:38:22 +03:00

90 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CampFire Critics
CampFire Critics — это веб-приложение, построенное на React, Vite и Tailwind CSS, предназначенное для управления медиаконтентом и пользовательскими отзывами. Приложение включает аутентификацию, управление медиа и административные функции для модерации контента.
## Функции
- **Аутентификация пользователей**: Вход, регистрация и управление профилем через Supabase.
- **Управление медиа**: Просмотр, поиск и отображение медиаконтента с каруселью и карточным интерфейсом.
- **Система отзывов**: Подача и просмотр отзывов с рейтинговым графиком для визуализации обратной связи.
- **Админская панель**: Управление медиа и отзывами через AdminMediaPage.
- **Адаптивный дизайн**: Построен с использованием Tailwind CSS для адаптивной верстки на разных устройствах.
## Технологии
- **Фронтенд**: React, Vite, Tailwind CSS
- **Бэкенд**: Supabase (Аутентификация, База данных)
- **Медиа API**: Интеграция с TMDB (The Movie Database) для получения данных о медиа
- **Управление состоянием**: React Context API (AuthContext, MediaContext)
## Настройка
1. **Клонируйте репозиторий**:
```bash
git clone https://github.com/your-username/campfire-critics.git
cd campfire-critics
```
2. **Установите зависимости**:
```bash
npm install
```
3. **Установите Supabase CLI** (если не установлен):
```bash
npm install -g supabase
```
4. **Настройте переменные окружения**:
- Переименуйте `.env.example` в `.env` и добавьте свои данные Supabase:
```
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
```
5. **Запустите сервер разработки**:
```bash
npm run dev
```
6. **Запустите миграции Supabase** (если необходимо):
```bash
npm run supabase:start
```
## Структура проекта
```
src/
├── App.jsx # Основной компонент приложения
├── main.jsx # Точка входа
├── pages/ # Компоненты страниц (Главная, Вход, Админ и т.д.)
├── components/ # Воспользуемые UI-компоненты
├── contexts/ # Провайдеры React Context (Auth, Media)
├── services/ # Утилиты API и сервисы (Supabase, TMDB)
└── assets/ # Статические файлы
```
## Вклад в проект
1. Откройте issue для обсуждения новой функции или исправления
2. Сделайте fork репозитория
3. Создайте новую ветку (`git checkout -b feature-name`)
4. Зафиксируйте изменения
5. Запушите ветку (`git push origin feature-name`)
6. Создайте Pull Request
## Требования
- Node.js 18+
- npm 8+
## Лицензия
MIT License. Подробнее см. [LICENSE](LICENSE).