عن المشروع
goenvoy هو مستودع أحادي متعدد الوحدات يوفّر مكتبات عملاء Go لمجموعة واسعة من الخدمات المتعلقة بالوسائط. تم تصميمه ليكون خفيف الوزن، ويستند حصرًا إلى مكتبة Go القياسية (net/http و encoding/json) دون أي تبعيات خارجية.
تنقسم المكتبة إلى عدة فئات:
- مكدس Arr: دعم لـ Sonarr, Radarr, Lidarr, Readarr, Prowlarr، وغيرهم.
- البيانات الوصفية: عملاء لـ TMDb, TheTVDB, AniList, MusicBrainz, Spotify, IGDB، والعديد من الخدمات الأخرى.
- عملاء التحميل: تكامل مع qBittorrent, Transmission, Deluge, SABnzbd, و NZBGet.
- خوادم الوسائط: دعم لـ Plex, Jellyfin, Emby, Audiobookshelf، وغيرهم.
- الأدوات والأنمي: يشتمل على FlareSolverr و Shoko Server.
المميزات التقنية الرئيسية تشمل:
- طرق واعية بالسياق للإلغاء والمهلة الزمنية.
- خيارات وظيفية لتكوين العميل بمرونة (مثلاً WithHTTPClient, WithTimeout).
- معالجة أخطاء آمنة من حيث النوع عبر أنواع APIError الخاصة بكل وحدة.
- دعم OAuth2 للخدمات القابلة للتطبيق.
- بنية معيارية تسمح للمستخدمين باستيراد مكتبات الخدمات المحددة التي يحتاجونها فقط.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.