This commit is contained in:
2025-11-21 16:54:47 +02:00
parent a3a7aa2474
commit be39714a87
2 changed files with 55 additions and 103 deletions

View File

@@ -2,19 +2,6 @@
Полнофункциональный REST API для поиска и получения информации о фильмах и сериалах с интеграцией Kinopoisk и TMDB. Полнофункциональный REST API для поиска и получения информации о фильмах и сериалах с интеграцией Kinopoisk и TMDB.
## Особенности
- **Двойная интеграция**: Kinopoisk API для русского контента + TMDB для международного
- **Умное переключение**: автоматический выбор источника по языку запроса
- **Коллекции Kinopoisk**: популярные, топ-рейтинговые фильмы/сериалы из официальных коллекций
- **Унифицированный формат**: единый ответ для контента из разных источников
- **Русские плееры**: Alloha, Lumex, Vibix, HDVB, Vidsrc, Vidlink
- **Поиск торрентов**: интеграция с RedAPI для поиска торрентов
- **Система реакций**: лайки, дизлайки, избранное с сохранением в БД
- **Аутентификация**: JWT + Google OAuth
- **Интерактивная документация**: Swagger/OpenAPI
- **Высокая производительность**: Go + горутины + кэширование
## 🛠 Быстрый старт ## 🛠 Быстрый старт
### Локальная разработка ### Локальная разработка
@@ -42,12 +29,6 @@ go run main.go
API будет доступен на `http://localhost:3000` API будет доступен на `http://localhost:3000`
### Деплой на Vercel
1. **Подключите репозиторий к Vercel**
2. **Настройте переменные окружения** (см. список ниже)
3. **Деплой произойдет автоматически**
## ⚙️ Переменные окружения ## ⚙️ Переменные окружения
```bash ```bash
@@ -113,8 +94,6 @@ GET /api/v1/categories/{id}/movies # Фильмы по категор
GET /api/v1/movies/search # Поиск фильмов GET /api/v1/movies/search # Поиск фильмов
GET /api/v1/movies/popular # Популярные GET /api/v1/movies/popular # Популярные
GET /api/v1/movies/top-rated # Топ-рейтинговые GET /api/v1/movies/top-rated # Топ-рейтинговые
GET /api/v1/movies/upcoming # Предстоящие
GET /api/v1/movies/now-playing # В прокате
GET /api/v1/movies/{id} # Детали фильма (устар.) GET /api/v1/movies/{id} # Детали фильма (устар.)
GET /api/v1/movies/{id}/recommendations # Рекомендации GET /api/v1/movies/{id}/recommendations # Рекомендации
GET /api/v1/movies/{id}/similar # Похожие GET /api/v1/movies/{id}/similar # Похожие
@@ -123,8 +102,6 @@ GET /api/v1/movies/{id}/similar # Похожие
GET /api/v1/tv/search # Поиск сериалов GET /api/v1/tv/search # Поиск сериалов
GET /api/v1/tv/popular # Популярные GET /api/v1/tv/popular # Популярные
GET /api/v1/tv/top-rated # Топ-рейтинговые GET /api/v1/tv/top-rated # Топ-рейтинговые
GET /api/v1/tv/on-the-air # В эфире
GET /api/v1/tv/airing-today # Сегодня в эфире
GET /api/v1/tv/{id} # Детали сериала (устар.) GET /api/v1/tv/{id} # Детали сериала (устар.)
### 🔓 Публичные маршруты (унифицированные) ### 🔓 Публичные маршруты (унифицированные)

View File

@@ -613,7 +613,6 @@ func getOpenAPISpecWithURL(baseURL string) *OpenAPISpec {
}, },
}, },
"/api/v1/torrents/search/{imdbId}": map[string]interface{}{ "/api/v1/torrents/search/{imdbId}": map[string]interface{}{
"get": map[string]interface{}{ "get": map[string]interface{}{
"summary": "Поиск торрентов", "summary": "Поиск торрентов",
@@ -1232,30 +1231,6 @@ func getOpenAPISpecWithURL(baseURL string) *OpenAPISpec {
}, },
}, },
}, },
"/api/v1/movies/now-playing": map[string]interface{}{
"get": map[string]interface{}{
"summary": "Сейчас в прокате",
"description": "Получение списка фильмов, которые сейчас в прокате",
"tags": []string{"Movies"},
"parameters": []map[string]interface{}{
{
"name": "page",
"in": "query",
"schema": map[string]string{"type": "integer", "default": "1"},
},
{
"name": "language",
"in": "query",
"schema": map[string]string{"type": "string", "default": "ru-RU"},
},
},
"responses": map[string]interface{}{
"200": map[string]interface{}{
"description": "Список фильмов в прокате",
},
},
},
},
"/api/v1/movies/{id}/recommendations": map[string]interface{}{ "/api/v1/movies/{id}/recommendations": map[string]interface{}{
"get": map[string]interface{}{ "get": map[string]interface{}{
"summary": "Рекомендации фильмов", "summary": "Рекомендации фильмов",