public | ||
src | ||
supabase | ||
.gitattributes | ||
.gitignore | ||
eslint.config.js | ||
index.html | ||
package-lock.json | ||
package.json | ||
postcss.config.js | ||
README.md | ||
run-migration.ps1 | ||
setup-supabase.ps1 | ||
tailwind.config.js | ||
vite.config.js |
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)
Настройка
-
Клонируйте репозиторий:
git clone https://github.com/your-username/campfire-critics.git cd campfire-critics
-
Установите зависимости:
npm install
-
Установите Supabase CLI (если не установлен):
npm install -g supabase
-
Настройте переменные окружения:
- Переименуйте
.env.example
в.env
и добавьте свои данные Supabase:VITE_SUPABASE_URL=your_supabase_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
- Переименуйте
-
Запустите сервер разработки:
npm run dev
-
Запустите миграции Supabase (если необходимо):
npm run supabase:start
Структура проекта
src/
├── App.jsx # Основной компонент приложения
├── main.jsx # Точка входа
├── pages/ # Компоненты страниц (Главная, Вход, Админ и т.д.)
├── components/ # Воспользуемые UI-компоненты
├── contexts/ # Провайдеры React Context (Auth, Media)
├── services/ # Утилиты API и сервисы (Supabase, TMDB)
└── assets/ # Статические файлы
Вклад в проект
- Откройте issue для обсуждения новой функции или исправления
- Сделайте fork репозитория
- Создайте новую ветку (
git checkout -b feature-name
) - Зафиксируйте изменения
- Запушите ветку (
git push origin feature-name
) - Создайте Pull Request
Требования
- Node.js 18+
- npm 8+
Лицензия
MIT License. Подробнее см. LICENSE.