Об этом проекте
goenvoy — это многомодульный монрепо, предоставляющий клиентские библиотеки Go для широкого спектра сервисов, связанных с медиа. Он разработан как лёгкий, полагаясь исключительно на стандартную библиотеку Go (net/http и encoding/json) без внешних зависимостей.
Библиотека организована в несколько категорий:
- Arr Stack: поддержка Sonarr, Radarr, Lidarr, Readarr, Prowlarr и других.
- Metadata: клиенты для TMDb, TheTVDB, AniList, MusicBrainz, Spotify, IGDB и многих других.
- Download Clients: интеграция с qBittorrent, Transmission, Deluge, SABnzbd и NZBGet.
- Media Servers: поддержка Plex, Jellyfin, Emby, Audiobookshelf и других.
- Tools & Anime: включает FlareSolverr и Shoko Server.
Ключевые технические особенности:
- Методы, осведомлённые о контексте, для отмены и таймаутов.
- Функциональные опции для гибкой конфигурации клиента (например, WithHTTPClient, WithTimeout).
- Безопасная по типам обработка ошибок через типы APIError, специфичные для модуля.
- Поддержка OAuth2 для применимых сервисов.
- Модульная структура, позволяющая пользователям импортировать только нужные им библиотеки конкретных сервисов.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.