Kazumi: Flutter Anime Streaming App with XPath-Based Custom Scraping Rules
基于自定义规则的番剧采集APP,支持流媒体在线观看,支持弹幕,支持实时超分辨率。
At a glance
- What is it?
- Kazumi is a Flutter application for streaming anime content that lets users write XPath-based rules to collect video from any source they choose. It runs on Android, Windows, macOS, Linux, and iOS, and supports real-time AI upscaling via Anime4K and synchronized viewing via the SyncPlay protocol.
- Who is it for?
- Users who want to organize anime viewing across multiple custom sources with danmaku, real-time upscaling, and synchronized co-watching will find Kazumi a feature-rich option for Android, Windows, macOS, and Linux. The GPL-3.0 license means any modified distribution must also be released under GPL-3.0.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 7 days ago.
- What is it written in?
- Mainly Dart, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 22, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
What Kazumi Does and Who It Is For
Kazumi is built with Flutter and allows users to collect and stream anime from sources on the web using rules they write themselves. The project description calls it a rule-based anime aggregator and streaming application. Unlike apps that provide a fixed content library, Kazumi has no built-in video sources. Instead, it provides a rule editor where users define XPath-based selectors to point the app at any web source they want to use.
The primary audience is anime viewers who want a single application that can aggregate content from multiple sites without being locked into one platform's catalog. The app also targets viewers who want features not found in typical browser-based viewing: danmaku (overlaid scrolling comments), real-time AI super-resolution, DLNA casting, and synchronized viewing with friends.
Kazumi is built using Flutter, which gives it a single codebase that runs across Android, Windows, macOS, and Linux. iOS is supported but requires sideloading because the app is not distributed through the App Store. HarmonyOS is supported through a separate branch repository.
How Custom Rules Work: XPath Selectors in Five Lines
The core mechanism of Kazumi is its rule system. Each rule is a set of XPath selectors that tell the app how to search a site, navigate episode listings, and extract the video stream URL. The README states that a complete rule requires at most five lines of XPath selectors.
The repository's rule collection is hosted in a separate repository at github.com/Predidit/KazumiRules. Users can import rules from that repository or write their own. The rule documentation is on the Kazumi website at kazumi.app/docs/rules/develop-rules.
The README documents a known limitation with the XPath support: 'We currently only support selectors starting with //.'' Any XPath expression that does not begin with // is not currently supported. This constraint means rule authors need to structure their selectors to match this pattern. The README recommends following the example rules provided in the rules repository when authoring custom rules.
When a rule cannot extract the video stream for external player use, the README explains this is because some sites use anti-hotlinking measures that Kazumi's internal player can handle but external players cannot. The workaround is to keep the built-in player enabled for those sources.
Installing Kazumi on Different Platforms
Releases are available on the GitHub Releases page at github.com/Predidit/Kazumi/releases/latest. The download is a platform-specific binary package for each supported operating system.
For Android, the app is also available through F-Droid. For Linux, a Flatpak package is available through Flathub at io.github.Predidit.Kazumi. Arch Linux users can install from the AUR:
[yay/paru] -S kazumi
[yay/paru] -S kazumi-binThe first AUR command builds from source. The second installs the precompiled binary. The README notes that building from source requires a good network environment because the Flutter dependencies are hosted on Google servers, and additional dependencies are on MavenCentral, GitHub, and SourceForge. Developers in mainland China may need to configure mirror addresses before a source build will succeed.
ForiOS, the README links to a sideloading guide at kazumi.app/docs/misc/how-to-install-in-ios. HarmonyOS 5.0 and later is supported via a separate branch repository.
Features: Danmaku, Anime4K Super-Resolution, DLNA, and Co-Watch
The feature list in the README documents the full set of capabilities. Danmaku integration uses the DandanPlay open platform API to provide overlaid scrolling comments during playback. Anime metadata comes from the Bangumi open API. Reverse image search for identifying anime by screenshot uses trace.moe.
Real-time super-resolution is implemented via Anime4K, a GPU-accelerated upscaling shader. The README notes that super-resolution requires significant GPU performance and recommends using the efficiency mode rather than the quality mode on machines without a high-performance discrete GPU. Applying super-resolution to low-resolution sources rather than high-resolution ones also reduces GPU load.
Synchronized co-watching uses the SyncPlay protocol and connects through SyncPlay's public servers. Cross-device sync is also supported for watch history and tracking lists. DLNA casting to compatible devices is included. Download support for offline viewing is available. The README notes that memory usage during playback is intentionally high because the app caches as much video as possible; a low-memory mode in the playback settings limits the cache for devices with less RAM.
GPL-3.0 License and Legal Disclaimer
Kazumi is licensed under the GNU General Public License version 3.0. GPL-3.0 is a copyleft license: anyone who distributes a modified version of the software must release the modified source code under GPL-3.0 as well. This matters for developers who want to fork the application and distribute it, since they cannot keep modifications proprietary.
The README includes a legal disclaimer that establishes usage boundaries. The disclaimer states that users must comply with local laws and regulations and must not infringe on third-party intellectual property rights. It specifies that 'data and cache generated from use of this project should be cleared within 24 hours' and that use beyond that window requires authorization from the relevant rights holders.
The README also states that the app collects no user data and uses no telemetry components. The app's icon is artwork by Yuquanaaa from Pixiv and is used with the original author's permission; it is not freely reusable without that author's explicit authorization.
Limitations: Platform Gaps and XPath Constraints
The iOS and HarmonyOS distributions require sideloading rather than App Store installation, which adds friction for non-technical users and means the app will not receive updates through the standard update mechanism on those platforms.
Linux support is described in the README as experimental. The .deb package provides icon and system tray support; the .tar.gz format does not, because it lacks the infrastructure for those integrations. Users who install the tar archive will need to accept the missing icon and tray.
The XPath implementation supports only selectors starting with //. This means rules written with other XPath patterns will not work and must be restructured. The README does not document a planned timeline for expanding XPath support.
The super-resolution feature adds real-time GPU load. On a machine without a discrete GPU, or on a GPU that is already under load, enabling quality mode can cause playback stuttering. The README recommends efficiency mode and targeting low-resolution sources as mitigation.
An alternative to Kazumi for anime streaming with source flexibility is Aniyomi on Android, which also uses an extension system to add sources but is Android-only. Kazumi's advantage is its cross-platform Flutter codebase and the Anime4K upscaling integration.
Maintenance Status and Community
The last push to the repository was on 2026-09-22. The most recent releases are version 2.3.6 and 2.3.5, both published on 2026-09-23, and 2.3.4 on 2026-09-22. The rapid release cadence suggests active development.
The project receives automated code review through Kilo Code, sponsored by the Kilo OSS Program as noted in the README. Free code signing on Windows is provided by SignPath.io and certified by the SignPath Foundation. Cloud infrastructure is supported by DigitalOcean. These sponsorships cover operational costs for the project.
Community discussion takes place on Telegram at t.me/kazumi_app. The contributing guide at static/doc/CONTRIBUTING.md documents PR requirements and the project's rules for AI-assisted code contributions. The rules repository for custom scraping rules is separate at github.com/Predidit/KazumiRules and welcomes community submissions.
Editorial conclusion
Users who want to organize anime viewing across multiple custom sources with danmaku, real-time upscaling, and synchronized co-watching will find Kazumi a feature-rich option for Android, Windows, macOS, and Linux. The GPL-3.0 license means any modified distribution must also be released under GPL-3.0. The app does not insert ads, but the disclaimer in the README states that data and cache must be cleared within 24 hours and that use must comply with local laws regarding third-party content.
Frequently asked questions
How does Kazumi collect video from custom sources?
Kazumi uses XPath selectors to scrape video sources. Each rule contains at most five XPath expressions that tell the app how to search a site, navigate episode listings, and extract the stream URL. Rules can be imported from the community rules repository at github.com/Predidit/KazumiRules or written manually using the built-in rule editor.
What platforms does Kazumi support?
Kazumi supports Android 10 and later, Windows 10 and later, macOS 10.15 and later, and Linux in an experimental state. iOS 13 and later is supported but requires sideloading. HarmonyOS 5.0 and later is supported through a separate branch repository, also requiring sideloading.
What is the Anime4K super-resolution feature in Kazumi?
Anime4K is a real-time GPU upscaling shader that Kazumi uses to increase the perceived resolution of lower-quality video streams during playback. The feature has two modes: efficiency and quality. The README recommends efficiency mode on machines without a high-performance discrete GPU, and suggests applying it to low-resolution sources rather than high-resolution ones to reduce GPU load.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/predidit-kazumi)
Community notes