عن المشروع

OpenAver هو تطبيق سطح مكتب مجاني ومفتوح المصدر، يركّز على أسلوب تصفح المجموعات عبر «التصفح بالأغلفة، والبحث بالممثلات»، مع إمكانية إخراج ملفات NFO وصور الأغلفة المطلوبة لـ Jellyfin/Emby/Kodi اختياريًا. المشروع صادر برخصة MIT، ويؤكد على التشغيل محليًا 100%، دون الحاجة لتسجيل حساب، ودون رفع معلومات الملفات، حيث تُستخدم طلبات الشبكة فقط لجلب البيانات الوصفية العامة. التثبيت والمنصات يدعم Windows 10/11 و macOS (شرائح Apple ابتداءً من M1). يتوفر سكريبت تثبيت بأمر واحد (عبر curl على macOS و PowerShell على Windows)، كما يمكن تنزيل ملف ZIP أو ملف تثبيت .bat لـ Windows من Releases. بعد التثبيت تكون العملية بالكامل عبر واجهة رسومية، دون الحاجة إلى Docker أو كتابة أوامر. لا يوجد مثبّت رسمي لـ Linux، لكن التوثيق يوضح إمكانية إعداده كخادم على الشبكة المحلية للتصفح عبر المتصفح. ثلاث صفحات رئيسية 1. Scanner (المسح): أضف المجلد الذي يحتوي على الفيديوهات، ثم اضغط «إنشاء صفحة الويب» لإضافتها للمكتبة. إذا كانت هناك ملفات NFO وأغلفة بجانب الفيديوهات، ستُقرأ البيانات الموجودة مباشرة، وعملية المسح للقراءة فقط دون كتابة. بعد المسح تُعرض العناصر الناقصة لملفات NFO أو الأغلفة، ويمكن إكمالها بنقرة واحدة من الإنترنت، مع ملء الحقول الفارغة فقط دون الكتابة فوق البيانات الموجودة. 2. Showcase (التصفح): تُعرض المجموعة على شكل جدار أغلفة مع إمكانية تطبيق فلاتر متعددة؛ وللممثلات جدار منفصل يوفر بطاقات بيانات تشمل الطول ومقاس الصدر والقياسات والعمر وتاريخ الأسماء المستعارة، مع إمكانية الترتيب حسب مقاس الصدر والعمر والطول وعدد الأفلام. كما يوجد نظام توصية بالأفلام المشابهة قائم على القواعد (الوسوم، السلاسل، شركات الإنتاج، الممثلات)، وهو مطابقة محلية وفورية دون اتصال. 3. Search (البحث): للتعامل مع الفيديوهات المنزّلة حديثًا، يمكن سحب الملفات أو المجلدات، مع التعرف التلقائي على أرقام الأفلام، والاستعلام الدفعي عن البيانات، وتنزيل الأغلفة وصور المشاهد، ثم التأكيد قبل الضغط على «تنظيم» لإعادة التسمية وإنشاء المجلدات وكتابة ملفات NFO. تتوفر أيضًا ميزة الإشارات المرجعية والتنظيم المجدول الاختياري (معالجة تلقائية للمجلدات المحددة كل 12 ساعة). مصادر جلب البيانات مدمج بها 8 مصادر: JavBus و Jav321 و JavDB و DMM و D2Pass و HEYZO و FC2 و AVSOX، مع إمكانية الاستعلام المتزامن والمطابقة مع المكتبة وتمييز ما تمتلكه. كما يتوفر موقعان احتياطيان هما JavLibrary و FC2-javten، ولأنهما خلف تحقق Cloudflare البشري، فهما يدعمان فقط الاستعلام الدقيق عن أرقام الأفلام يدويًا في نسخة سطح المكتب. يمكن للمستخدمين المتقدمين إعداد Metatube بأنفسهم وربطه بالفيدرالية، ليرتفع إجمالي المصادر إلى أكثر من 30 مزودًا يصونها المجتمع. التكامل مع برامج التشغيل عند التنظيم يمكن اختيار إخراج أسماء ملفات poster و fanart وملفات NFO التي يتعرّف عليها Jellyfin/Emby/Kodi، مع بقاء الفيديوهات في مكانها. بالنسبة للمجموعات على NAS أو التخزين السحابي المُحمَّل التي لا يرغب المستخدم في تعديلها، يمكن ضبطها كمصدر «للقراءة فقط»: لا تُكتب أي بيانات على الملفات الأصلية، وتُخرج البيانات والأغلفة المجلوبة إلى مجلد محلي محدد، مع إمكانية إنشاء ملفات .strm ليتسنى لبرامج التشغيل بث الملف الأصلي مباشرة؛ كما يُدعم استبدال المسارات عبر الأجهزة المختلفة. ميزات أخرى - أسماء مستعارة للممثلات والوسوم: يمكن إضافة أسماء مستعارة عبر الواجهة، وتتوسع المرادفات الصينية واليابانية والإنجليزية تلقائيًا عند البحث، وتُدمج الأسماء الفنية وأسماء ما بعد التقاعد لشخص واحد في بطاقة واحدة. - الترجمة بالذكاء الاصطناعي: يدعم Ollama (محلي مجاني) و Gemini Flash ونقاط نهاية متوافقة مع OpenAI، لترجمة العناوين اليابانية إلى لغة الواجهة. - التصفح عبر الأجهزة المحمولة: يمكن التبديل إلى وضع «الخادم» في الإعدادات، فيتصفح الهاتف أو الجهاز اللوحي على نفس شبكة Wi-Fi عبر المتصفح، وهو مغلق خارجيًا افتراضيًا مع إمكانية تعيين كلمة مرور. - تصدير HTML ثابت: يمكن إنشاء ملف HTML مستقل للتصفح دون اتصال. - أربع لغات واجهة قابلة للتبديل الفوري: الصينية التقليدية، الصينية المبسطة، اليابانية، الإنجليزية. واجهة برمجة للتشغيل بالذكاء الاصطناعي يوفر المشروع محليًا REST API و capabilities manifest، يمكن لأدوات الذكاء الاصطناعي (مثل Claude Code و Cursor وغيرها) قراءة وصف نقاط النهاية بأمر curl واحد ثم ربط عمليات متعددة الخطوات بأنفسها، مثل إضافة ممثلات للمجموعة دفعيًا، وإنشاء أسماء مستعارة، وإضافة وسوم دفعيًا، أو إنشاء صفحات HTML بالأغلفة. تتركز تعريفات نقاط النهاية في web/routers/capabilities.py. البنية التقنية الخلفية مبنية على FastAPI (Python 3.12)، والواجهة الأمامية تستخدم Jinja2 و DaisyUI و Tailwind CSS و Alpine.js، والتغليف لسطح المكتب عبر PyWebView، وقاعدة البيانات SQLite (وضع WAL)، والاختبارات مكتوبة بـ Pytest. يوضح توثيق المشروع إمكانية التشغيل في وضع التطوير ووضع سطح المكتب من الكود المصدري، مع توفير سكريبتات التعبئة لـ Windows و macOS. الخصوصية وأمان الملفات يصرّح المشروع بعدم رفع الفيديوهات أو قوائم المكتبة، وعدم وجود حسابات أو قياسات عن بُعد. البحث والتصفح والمسح كلها للقراءة فقط؛ وإكمال البيانات يضيف فقط ملفات NFO وأغلفة بجانب الفيديو؛ ولا يتم نقل أو إعادة تسمية الفيديوهات إلا عندما يضغط المستخدم بنفسه على «تنظيم» وفق القواعد، دون حذف أي ملفات، مع تنبيه مسبق إذا وُجد ملف بنفس الاسم في الوجهة. الترخيص والمجتمع صادر برخصة MIT، ويوفر GitHub Issues ومجموعة Telegram كقنوات للإبلاغ والتواصل. كما يرفق المشروع إخلاء مسؤولية يذكّر المستخدمين باحترام شروط خدمة المواقع، والتحكم المعقول في تكرار الطلبات، واستخدامه للأغراض الشخصية والتعليمية والبحثية فقط.