প্রকল্প সম্পর্কে
Migurdex হলো টার্মিনাল থেকে তুর্কি অ্যানিমে খোঁজা ও দেখার জন্য প্রস্তুত একটি কমান্ড-লাইন টুল। এটি একটি TUI (টেক্সট-ভিত্তিক ইন্টারফেস), একটি স্থানীয় HTTP API এবং Rust-এ লেখা একটি নেটওয়ার্ক লেয়ার নিয়ে গঠিত; প্লেব্যাক MPV-এর মাধ্যমে হয়।
উল্লেখযোগ্য সক্ষমতা:
- ফাজি সার্চ সমর্থন (উদাহরণস্বরূপ, "opc" টাইপ করলে One Piece পাওয়া যায়)।
- ১৩টি তুর্কি প্রোভাইডার: Acheriya, AniHub, AnimeciX, Animexe, AnimPow, Anizium, Anizm, AsyaAnimeleri, OpenAnime, SonAnime, TrAnimeIzle, TRAnimeci এবং আর্কাইভ-ভিত্তিক TurkAnime।
- AniList ও MAL-এর মাধ্যমে তথ্য/পোস্টার আনা এবং দেখার অবস্থা সিঙ্ক করা।
- MPV দিয়ে যেখানে ছেড়েছিলেন সেখান থেকে পুনরায় শুরু; হিস্ট্রি, ফেভারিট এবং সার্চ হিস্ট্রি সংরক্ষণ।
- Discord RPC (কনফিগারযোগ্য), ইনকগনিটো মোড (হিস্ট্রি ও সিঙ্ক স্থগিত করে)।
- স্বয়ংক্রিয় সোর্স নির্বাচন: সার্ভার, কোয়ালিটি ও টাইপ নিয়ম অনুযায়ী নির্বাচন করে; কোনোটি মিল না হলে একটি ম্যানুয়াল তালিকা দেখায়।
- প্রতি প্রোভাইডার চালু/বন্ধ করা এবং র্যাঙ্কিং অগ্রাধিকার নির্ধারণ।
ইনস্টলেশন Linux ও Windows-এর জন্য স্ক্রিপ্ট (install.sh / install.ps1) দিয়ে অথবা Releases পেজে থাকা tar.gz, zip এবং AppImage প্যাকেজ দিয়ে করা যায়। প্রয়োজনীয়তার মধ্যে রয়েছে MPV ইনস্টল করা ও PATH-এ থাকা, AppImage-এর জন্য libfuse2, এবং সোর্স থেকে বিল্ড করার জন্য .NET 10 SDK ও Rust/cargo।
ব্যবহারের ধারা হলো Search -> Detail -> Source -> Play। মেনুতে অ্যারো কী ও Enter ব্যবহার করা হয়, এবং Esc দিয়ে পিছনে যাওয়া হয়। মেনুতে না ঢুকেই কাজ করার একটি কমান্ড-লাইন মোডও আছে: `migurdex search`, `migurdex play` এবং `migurdex continue`-এর মতো কমান্ড সরাসরি সার্চ ও প্লেব্যাক করতে দেয়; `--json` দিয়ে JSON আউটপুট পাওয়া যায়, এবং `--debug` দিয়ে mpv না খুলেই রিজলভ করা URL পাওয়া যায়। `migurdex update` আপডেট খোঁজে ও ইনস্টল করে; চ্যানেল (stable/prerelease) এবং স্বয়ংক্রিয় চেক সেটিংসে পরিবর্তন করা যায়।
সেটিংস মেনু থেকে autoplay, অপেক্ষার সময়, Discord RPC ও টাইটেল মোড, ইনকগনিটো মোড, প্লেয়ার লগ, API ঠিকানা (ডিফল্ট http://127.0.0.1:7045), AniList/MAL সংযোগ, প্রোভাইডার চালু/বন্ধ, র্যাঙ্কিং অগ্রাধিকার এবং স্বয়ংক্রিয় নির্বাচনের নিয়ম সম্পাদনা করা যায়। ডেটা Linux-এ ~/.config/migurdex/ এর অধীনে এবং Windows-এ %APPDATA%\migurdex\ এর অধীনে একটি SQLite ডেটাবেস (হিস্ট্রি, ফেভারিট, সার্চ, টোকেন, ম্যাপিং), config.json এবং লগ হিসেবে সংরক্ষিত হয়।
আর্কিটেকচারটি গঠিত Migurdex.Api (সার্চ, ডিটেইল, সোর্স রিজলিউশন), Migurdex.Cli (টার্মিনাল ইন্টারফেস), Migurdex.Core (প্লাগইন লোডার, Rust ব্রিজ, এক্সট্রাক্টর), Migurdex.Shared (মডেল এবং IAnimeProvider, IExtractor ইন্টারফেস), Migurdex.Native (Rust HTTP ক্লায়েন্ট) এবং Plugins/ (প্রোভাইডার) নিয়ে। প্রবাহটি হলো TUI -> API -> প্লাগইন (+ Rust HTTP) -> সোর্স তালিকা -> MPV। নেটিভ লাইব্রেরি (libmigurdex_native.so / migurdex_native.dll) API-এর সাথে আসে। বিল্ট-ইন এক্সট্রাক্টরগুলো Migurdex.Core/Extractors-এর অধীনে থাকে এবং GET /api/v1/extractors ও POST /api/v1/extractors/resolve এন্ডপয়েন্টের মাধ্যমে API দিয়ে কল করা যায়।
TurkAnime প্রোভাইডার বন্ধ হয়ে যাওয়া সাইটের আর্কাইভের একটি পরিষ্কার ও যাচাইকৃত সংস্করণ ব্যবহার করে; এটি একটি লাইভ Turso ডেটাবেসের মাধ্যমে কোয়েরি করা হয়। build.sh / build.ps1 স্ক্রিপ্ট (debug, release, publish) দিয়ে অথবা দুটি টার্মিনালে `dotnet run` দিয়ে বিল্ড করা যায়; টেস্ট চালানো হয় `dotnet test` দিয়ে। প্রকল্পটি GPL-3.0 লাইসেন্সের অধীনে। রোডম্যাপে নতুন এপিসোডে স্কিপ করা এবং ইন্ট্রো স্কিপের পরিকল্পিত আইটেম রয়েছে।
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.