Skip to content

Deadendev/Akiora

 
 

Repository files navigation

Akiora

A modern, cross-platform anime streaming and tracking app.

License: GPL v3 Platforms Built with Flutter


Akiora is a fast, customisable anime player that brings cataloguing, streaming, danmaku, tracking, and watch-together into a single polished interface. Define your own video sources with a concise XPath rule format, watch in sync with friends, and enjoy real-time AI-powered upscaling on hardware as light as a phone.

Highlights

  • Custom rule engine — Define video sources with up to five lines of XPath selectors. Rules can be imported, exported, and shared.
  • Built-in player — High-quality playback powered by libmpv. Hardware decoding, HLS support, ad filtering, and per-source playback overrides.
  • Real-time super-resolution — Anime4K-based upscaling with quality and performance presets.
  • Danmaku — Bullet-comment overlay with full style controls, keyword and regex blocklists, deduplication, and adjustable timing.
  • Watch tracking — Personal watchlist with optional cross-device sync via Bangumi or WebDAV.
  • Watch Together — Synchronised playback over the SyncPlay protocol with public and self-hosted servers.
  • Image search — Identify any anime from a screenshot via trace.moe integration.
  • Offline downloads — Per-episode or full-season downloads with adjustable concurrency and segment-level retries.
  • DLNA casting and external player hand-off.
  • Adaptive UI — Material You dynamic colour, OLED-friendly dark mode, high-refresh-rate support, custom title bars on desktop.

Supported platforms

Platform Minimum version
Android 10
iOS 13 (self-signing required for sideload)
Windows 10
macOS 10.15
Linux experimental — .deb recommended

Screenshots

Installation

Pre-built binaries for each supported platform are published on the Releases page.

iOS builds require self-signing before sideloading. Linux users should prefer the .deb package; the .tar.gz is intended for repackaging only and lacks system-tray and icon integration by design.

Building from source

flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter run

A current Flutter SDK is required, along with the standard platform toolchain you target (Android Studio for Android, Xcode for iOS/macOS, Visual Studio with C++ tools for Windows, GCC + GTK for Linux).

App icons across every platform are regenerated from assets/images/logo/ via:

dart run flutter_launcher_icons

Configuration

Almost every behaviour is exposed through the in-app Settings menu, including:

  • Video renderer and hardware decoder selection
  • Super-resolution mode (off / performance / quality)
  • Danmaku styling and shielding
  • Download concurrency (per episode and per segment)
  • Network proxy
  • Sync providers (Bangumi token, WebDAV endpoint)
  • Default startup screen, theme, and accent colour

For source-rule authoring, see the bundled examples and the Rule Editor page inside the app.

FAQ

Why does playback stutter when I enable super-resolution?

Super-resolution is GPU-bound. On laptops or integrated GPUs, prefer the Performance preset. Applying super-resolution to lower-resolution sources is dramatically cheaper than applying it to high-resolution sources.

Memory usage during playback looks high.

The player aggressively buffers video to deliver smoother playback and faster seeking. On constrained devices, enable Low Memory Mode under Player Settings to bound the cache.

An external player can't open one of my videos.

Some sources require anti-hotlinking headers or cookies to deliver media. The built-in player handles this transparently; most external players cannot.

How do I write a custom rule?

Rules are five short XPath selectors targeting search results, episode lists, and the final stream URL. Only selectors starting with // are supported. Use one of the bundled examples as a template and verify the rule with the in-app Test tool.

I'm building from source and the build fails.

In addition to the Google-hosted Flutter dependencies, the build pulls native libraries from MavenCentral, GitHub, and SourceForge. If you are on a restricted network you may need to configure mirrors for those hosts.

Contributing

Issues and pull requests are welcome. For new video-source rules in particular, please include a brief description and a sample query so reviewers can validate the rule end-to-end.

Privacy

Akiora does not collect telemetry or personal data. Preferences and watch history are stored locally; optional sync flows go directly through the third-party services you configure (Bangumi, WebDAV, SyncPlay) and never touch any first-party server.

License

Released under the GNU General Public License v3.0. You are free to use, study, modify, and redistribute the software under the terms of that license.

Built with

Akiora stands on the work of many excellent open-source projects:

About

An anime collection app based on custom rules, supporting online streaming playback, supporting bullet comments (danmaku), and supporting real-time super-resolution upscaling.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Dart 76.4%
  • GLSL 18.7%
  • C++ 2.2%
  • CMake 1.0%
  • Swift 0.8%
  • Kotlin 0.6%
  • Other 0.3%