mirror of
https://gitlab.com/foxixus/neomovies.git
synced 2025-10-27 17:38:50 +05:00
Update 35 files
- /src/api.ts - /src/lib/utils.ts - /src/lib/neoApi.ts - /src/lib/mongodb.ts - /src/lib/favoritesApi.ts - /src/lib/models/Favorite.ts - /src/hooks/useTMDBMovies.ts - /src/hooks/useImageLoader.ts - /src/hooks/useMovies.ts - /src/types/movie.ts - /src/components/SearchResults.tsx - /src/components/SettingsContent.tsx - /src/components/MovieCard.tsx - /src/components/FavoriteButton.tsx - /src/components/admin/MovieSearch.tsx - /src/app/page.tsx - /src/app/movie/[id]/page.tsx - /src/app/movie/[id]/MovieContent.tsx - /src/app/api/movies/upcoming/route.ts - /src/app/api/movies/search/route.ts - /src/app/api/movies/top-rated/route.ts - /src/app/api/movies/[id]/route.ts - /src/app/api/movies/popular/route.ts - /src/app/api/favorites/route.ts - /src/app/api/favorites/check/[mediaId]/route.ts - /src/app/api/favorites/[mediaId]/route.ts - /src/app/tv/[id]/TVShowContent.tsx - /src/app/tv/[id]/TVShowPage.tsx - /src/app/tv/[id]/page.tsx - /src/app/favorites/page.tsx - /src/configs/auth.ts - /next.config.js - /package.json - /README.md - /package-lock.json
This commit is contained in:
135
README.md
135
README.md
@@ -39,94 +39,49 @@ Neo Movies - это современная веб-платформа для пр
|
||||
- Git
|
||||
- npm
|
||||
|
||||
## Установка
|
||||
## Начало работы
|
||||
|
||||
1. **Клонируйте репозиторий:**
|
||||
```bash
|
||||
git clone https://gitlab.com/foxixus/neomovies.git
|
||||
cd neomovies
|
||||
```
|
||||
|
||||
2. **Установите зависимости:**
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
3. **Создайте файл `.env` в корневой директории и добавьте следующие переменные:**
|
||||
```env
|
||||
# База данных MongoDB
|
||||
MONGODB_URI=your_mongodb_uri
|
||||
|
||||
# NextAuth конфигурация
|
||||
NEXTAUTH_SECRET=your_nextauth_secret
|
||||
NEXTAUTH_URL=http://localhost:3000
|
||||
|
||||
# Google OAuth
|
||||
GOOGLE_CLIENT_ID=your_google_client_id
|
||||
GOOGLE_CLIENT_SECRET=your_google_client_secret
|
||||
|
||||
# Email конфигурация (для подтверждения регистрации)
|
||||
GMAIL_USER=your_gmail@gmail.com
|
||||
GMAIL_APP_PASSWORD=your_app_specific_password
|
||||
|
||||
# TMDB API (для получения информации о фильмах)
|
||||
NEXT_PUBLIC_TMDB_API_KEY=your_tmdb_api_key
|
||||
NEXT_PUBLIC_TMDB_ACCESS_TOKEN=your_tmdb_access_token
|
||||
|
||||
# JWT конфигурация
|
||||
JWT_SECRET=your_jwt_secret
|
||||
|
||||
# Lumex Player URL
|
||||
NEXT_PUBLIC_LUMEX_URL=your_lumex_player_url
|
||||
```
|
||||
|
||||
4. **Запустите проект:**
|
||||
```bash
|
||||
# Режим разработки
|
||||
npm run dev
|
||||
|
||||
# Сборка для продакшена
|
||||
npm run build
|
||||
npm start
|
||||
```
|
||||
|
||||
## Получение API ключей
|
||||
|
||||
### TMDB API
|
||||
1. Создайте аккаунт на [TMDB](https://www.themoviedb.org/)
|
||||
2. Перейдите в настройки профиля -> API
|
||||
3. Создайте новое API приложение
|
||||
4. Скопируйте API ключ и Access Token
|
||||
|
||||
### Google OAuth
|
||||
1. Перейдите в [Google Cloud Console](https://console.cloud.google.com/)
|
||||
2. Создайте новый проект
|
||||
3. Включите Google OAuth API
|
||||
4. Создайте учетные данные OAuth 2.0
|
||||
5. Добавьте разрешенные URI перенаправления:
|
||||
- http://localhost:3000/api/auth/callback/google
|
||||
- https://your-domain.com/api/auth/callback/google
|
||||
|
||||
### Gmail App Password
|
||||
1. Включите двухфакторную аутентификацию в аккаунте Google
|
||||
2. Перейдите в настройки безопасности
|
||||
3. Создайте пароль приложения
|
||||
4. Используйте этот пароль в GMAIL_APP_PASSWORD
|
||||
|
||||
## Разработка
|
||||
|
||||
### Структура проекта
|
||||
1. Клонируйте репозиторий:
|
||||
```bash
|
||||
git clone https://gitlab.com/foxixus/neomovies.git
|
||||
cd neomovies
|
||||
```
|
||||
neo-movies-web/
|
||||
├── src/
|
||||
│ ├── app/ # App Router pages
|
||||
│ ├── components/ # React компоненты
|
||||
│ ├── hooks/ # React хуки
|
||||
│ ├── lib/ # Утилиты и API
|
||||
│ ├── models/ # MongoDB модели
|
||||
│ └── styles/ # Глобальные стили
|
||||
├── public/ # Статические файлы
|
||||
└── package.json
|
||||
|
||||
2. Установите зависимости:
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
3. Создайте файл `.env` и добавьте следующие переменные:
|
||||
```env
|
||||
NEXT_PUBLIC_API_URL=https://neomovies-api.vercel.app
|
||||
```
|
||||
|
||||
4. Запустите приложение:
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
Приложение будет доступно по адресу [http://localhost:3000](http://localhost:3000)
|
||||
|
||||
## API
|
||||
|
||||
Приложение использует отдельный API сервер. API предоставляет следующие возможности:
|
||||
|
||||
- Поиск фильмов и сериалов
|
||||
- Получение детальной информации о фильме/сериале
|
||||
- Оптимизированная загрузка изображений
|
||||
- Кэширование запросов
|
||||
|
||||
## Структура проекта
|
||||
|
||||
```
|
||||
src/
|
||||
├── app/ # App Router и страницы
|
||||
├── components/ # React компоненты
|
||||
├── lib/ # Утилиты и API клиенты
|
||||
├── types/ # TypeScript типы
|
||||
└── utils/ # Вспомогательные функции
|
||||
```
|
||||
|
||||
## 👥 Авторы
|
||||
@@ -135,7 +90,7 @@ neo-movies-web/
|
||||
|
||||
## 📄 Лицензия
|
||||
|
||||
Этот проект распространяется под лицензией MIT. Подробности в файле [LICENSE](LICENSE).
|
||||
Этот проект распространяется под лицензией Apache-2.0. Подробности в файле [LICENSE](LICENSE).
|
||||
|
||||
## 🤝 Участие в проекте
|
||||
|
||||
@@ -146,6 +101,12 @@ neo-movies-web/
|
||||
3. Внесите изменения
|
||||
4. Отправьте pull request
|
||||
|
||||
|
||||
## Благодарности
|
||||
|
||||
- [TMDB](https://www.themoviedb.org/) за предоставление API
|
||||
- [Vercel](https://vercel.com/) за хостинг API
|
||||
|
||||
## 📞 Контакты
|
||||
|
||||
Если у вас возникли вопросы или предложения, свяжитесь с нами:
|
||||
|
||||
Reference in New Issue
Block a user