Usanami is a free and open-source video player and streaming app for Android, forked from Usagi
| # | Item | Status | Notes |
|---|---|---|---|
| 1 | Update App Name and Icon | 🟢 Done | app_name → Usanami, package → org.draken.usanami, UsanamiApp.kt created (debug+release), Theme.Usagi → Theme.Usanami (395 refs), colors usagi_* → usanami_*, deep link schemes → usanami. Icon still needs visual replacement. |
| 2 | Implement Video Player | 🟢 Done | ExoPlayer + gestures (double-tap seek, brightness/volume swipe), speed dialog, resize cycling, fullscreen toggle, lock toggle. PiP mode (auto-enter on home, manual button, PiP actions). Quality selector (track-based dialog). Playlist with bottom sheet (episode list, prev/next, repeat/shuffle). Subtitle track selection (on/off, language pick) + settings (font size, color, enable/disable). |
| 3 | Adapt Download Manager | 🟢 Done | VideoDownloadWorker with pause/resume, HTTP Range resume, ETA tracking. VideoCacheManager with two-tier storage (ExoPlayer SimpleCache + persisted downloads). Notifications, WorkManager scheduling. |
| 4 | Replace Manga Terminology | 🟢 Done | Full rename: 469 files changed (5038+/5038-). Entities, DAOs, repositories, UI adapters, ViewModels, XML layouts, imports all renamed. DB table names preserved (TABLE_MANGA, TABLE_CHAPTERS) to avoid Room migrations. Tsuki imports updated (MangaLoaderContext→MediaLoaderContext, etc.). |
| 5 | Update Settings Screens | 🟢 Done | PlayerSettingsFragment added with playback speed, autoplay, HW accel, subtitles. pref_readers.xml + pref_reader.xml stubs created for compilation. Reader settings entry replaced with Player settings. |
| 6 | Plugin/Extension Integration | 🟢 Done | AnimeSourceParser adapter bridges Aniyomi AnimeSource → Tsuki MediaParser. MediaDynamicRepository auto-detects Aniyomi extensions from JARs. Model mapping: SAnime↔Media, SEpisode↔Episode, Video/Hoster↔VideoSource. AnimeCatalogueSource support for search/popular. |
| 7 | Clean Up Stubs | 🟢 Done | Removed settings/reader files (4 files, 439 lines deleted). Reader stubs (14 files) kept as minimal stubs with @Deprecated annotations (referenced by 20+ other files). Manifest cleaned up (comments for removed activities). |
✅ Compile blockers resolved: UsanamiApp.kt created, pref_readers.xml/pref_reader.xml created, ColorFilterConfigActivity removed from manifest.
Usanami is a fork of Usagi reimagined as a video streaming application. It uses the Tsuki core library (forked with Media/Episode/VideoSource models) and Aniyomi-compatible extension plugins for video sources.
| Repository | Description |
|---|---|
| Usanami | Main application — this repo |
| Tsuki | Core library (Media models, networking, database) |
| plugins | Video source extension framework |
| TsukiMix | Aniyomi extension API compatibility layer |
All programs from the Usanami project are free, open-source programs under the GPL license. You may copy, distribute, and modify the software as long as you keep track of changes/dates in the source files.
