Open-source project
easybangumiorg/EasyBangumi avatar
easybangumiorg/EasyBangumi

EasyBangumi: an open source Android anime client that ships no content

纯纯看番,使用 Compose 开发的 Android 看番软件,支持多番剧源

4,021 stars106 forksKotlinGPL-3.0

At a glance

What is it?
EasyBangumi is a Compose-based Android app for browsing and playing anime through user-added sources. Its own README says the official project offers no packaged build and no video content, so the first decision is whether you can build it yourself.
Who is it for?
EasyBangumi suits Android users who are comfortable running a Gradle build and maintaining a self-built APK, and who accept that every source comes from outside the project. It does not suit anyone expecting an official download or preloaded catalogue, because the README states the official project provides neither.
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 22 days ago.
What is it written in?
Mainly Kotlin, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 25, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What EasyBangumi actually is, and who the README is written for

EasyBangumi, 纯纯看番, is an Android application written in Kotlin and built with Jetpack Compose. The repository topics describe it as an acg, bangumi and cartoon client. The README states plainly that the project exists to study Compose and audio and video technology, and that the official project does not provide packaging or downloads. That sentence reframes everything else on the page: this is a source repository first, a consumer product second.

The README repeats the point three ways. The packaged app contains no video content and the user must add it manually. Content a user imports has nothing to do with the software. The source is free on GitHub and users may download and package it themselves, while anyone who paid for a copy has no claim against the project. For a reader deciding whether to adopt it, the practical question is not whether the feature list looks complete. It is whether building and running an Android project from source is something you already do.

The audience that fits is narrow and specific: Android users who want a Compose-based client they can compile, extend and point at their own sources, and who treat the app as a shell rather than a service. The audience that does not fit is anyone who wants an install-and-watch experience. The README does not offer one, and it says so before it lists a single feature.

Source management, plugins and the mechanism behind the catalogue

The development plan in the README is the clearest description of the architecture available. It lists 番剧搜索, 首页推荐, 番剧收藏, 番剧分类, 番剧播放, 多主题, 倍速播放, 播放历史, 投屏功能, 添加源管理, 番剧下载, 数据保存恢复 and 插件化 with a plugin market as completed items. Unchecked items include a PC version, cloud sync of saved data, danmaku, Bangumi-based metadata scraping and Bangumi-based data sync.

Read that list as a data flow. The app provides the interface layer: search, category browsing, recommendations on the home screen, favourites, history, playback controls and downloads. The catalogue itself arrives through 添加源管理, source management, and through the plugin system with its plugin market. The repository layout supports this reading. There are top-level directories named inject, inner_source, inner_source_reports, easy-player2, lib_upnp and third_party alongside the app module. A player module, an injection layer and a source directory are exactly what you would expect from a client whose content is supplied at runtime rather than bundled.

The design consequence is that EasyBangumi cannot guarantee what a user sees. Search results, playback availability and even whether a given title plays at all depend on sources the project does not control and does not ship. The README's disclaimer that imported content is unrelated to the software is not legal boilerplate alone; it describes how the program is put together. If you evaluate it against a streaming app, it will look empty. If you evaluate it as a player and library front end with a pluggable source layer, the feature list is coherent.

Two gaps stand out in that list. Danmaku is unchecked, so the overlay-comment experience common to Chinese anime sites is not part of the shipped feature set. Bangumi-based scraping and sync are also unchecked, which means metadata matching against the Bangumi database is planned rather than present. Both are things a prospective user might assume exist.

Building EasyBangumi from source and adding a first source

The README does not give install steps, because it does not distribute builds. It points to the GitHub repository and says users may download and package the source themselves. What the repository does provide is a standard Gradle Android layout: build.gradle.kts and settings.gradle.kts at the top level, a gradle directory with the wrapper, and gradlew plus gradlew.bat. The wrapper is the entry point, and the repository names the app module explicitly.

To produce a build, clone the repository and run the wrapper script committed to the project root. The repository commits both gradlew and gradlew.bat, so the same entry point exists on Unix-like systems and on Windows; the README does not document a specific task name or signing configuration, so read the build files before choosing one.

bash
./gradlew

On Windows the equivalent is gradlew.bat. Because the README does not publish a build recipe, the task you pass to the wrapper is something you determine from build.gradle.kts and settings.gradle.kts rather than something the project tells you.

Once the app is installed, the first real task is not searching for a title. It is adding a source, because the app ships with none. The README lists 添加源管理 as a completed feature, so the entry point exists in the interface, but it does not publish a source format, a schema or an example file. The plugin system and plugin market are listed as completed too, and the repository contains an inject directory and an inner_source directory whose contents the README does not describe. In practice you will learn the source format from those directories and from the community channels the README links, not from the README itself. That is the honest state of the onboarding path: the build is conventional, the content configuration is not documented in the repository's front page.

What EasyBangumi will not do for you

The largest limitation is stated by the project itself and is not a bug: there is no official package and no bundled content. Anyone who needs a working app in five minutes should stop reading here. The README's warning that the author accepts no responsibility for third-party packaged distributions also means that if you find an APK circulating online, the project is not its source and does not stand behind it.

The second limitation is documentation depth. The README is a feature checklist, a set of disclaimers and a list of chat channels. It does not document the source format, the plugin API, the data backup format or the playback engine's configuration. The repository contains a docs directory and an openspec directory, but the README does not describe what is in them, and the front page gives no pointer. A contributor can read the code. A user looking for a configuration reference will not find one on the front page.

The third is platform scope. The development plan lists a PC version as unchecked, so this is Android only. The search results around this project include people looking for iOS anime apps; EasyBangumi is not one and the repository gives no indication that it will be. If you need desktop or iOS, this is the wrong tool regardless of how the Android build turns out.

There is also a licensing boundary worth naming. The README states that from the version that introduced the libmpv playback engine, the project is released under GNU General Public License v3.0, and that historical versions remain under the licence they shipped with. Third-party components including libmpv, mpv, FFmpeg and Anime4K keep their own copyright and licence notices. For someone who only builds and uses the app privately, that is mostly background. For someone who wants to redistribute a modified build, it changes what you are allowed to do.

How it differs from Kazumi and other anime clients

The related searches around this project point at Kazumi and at Animeko, and the comparison is useful because the three sit at different points on the same axis. Kazumi is also an open source anime client, but its distinguishing trait is the rule-based source model: sources are described as rules that a user writes or imports, and the project's identity is tied to that rule format. EasyBangumi instead lists 添加源管理 and, separately, 插件化 with a plugin market as two completed features. That is a different extension mechanism. A plugin market implies packaged, distributable extensions that a user installs, while a rule file implies a text description a user can write by hand. The two approaches produce different failure modes: a rule format is easier to inspect and share as text, and a plugin is easier to install but harder to audit.

Animeko comes up in searches in connection with data and sources, and the README's own unchecked items, Bangumi-based scraping and Bangumi-based data sync, describe functionality in that direction. Those items are not done, so EasyBangumi today does not offer the metadata matching and cross-device data story that a Bangumi-integrated client would. If synchronising your watch history across devices matters to you, this project's plan says it is still ahead.

The sharper difference is packaging philosophy. A client that ships an official build and a client that refuses to ship one are making opposite bets. EasyBangumi's bet is that keeping distribution in users' hands limits the project's exposure and keeps it a learning exercise, which the README states outright. The cost of that bet lands on the user, in the form of a Gradle build and an undocumented source setup.

Maintenance, releases and the cost of keeping a build current

The repository is not archived, and the last push was on 2026-09-08. The most recent releases listed are 6.1.3 on 2026-09-11, 6.1.2 on 2026-09-02 and 6.1.1 on 2026-08-31. Those three releases fall within a two-week window, which tells you the project was moving quickly at that point, and the changelog for each is published as a file in the repository at app/src/main/assets/update_log.txt rather than only in the release notes. The README links to it under 更新列表.

For a self-builder, the upgrade cost is the cost of re-running the build. There is no official update channel, so nothing will tell you a new version exists unless you watch the repository or the changelog file. The Gradle wrapper and the Android toolchain will drift over time, and a project that moves this fast will occasionally break a build you had working. Budget for that as a recurring task rather than a one-off.

On licensing: the README states the project is GPL-3.0 from the libmpv version onward, with historical versions under their original terms, and that libmpv, mpv, FFmpeg and Anime4K retain their own notices. That matters most if you plan to publish a build. GPL-3.0 is a copyleft licence, so a distributed modified build carries obligations, and the third-party components add their own conditions on top. This is not legal advice; if you intend to distribute, read the LICENSE file and the third_party directory yourself.

A practical note on the plugin market: it is listed as a completed feature, and a market implies extensions arriving from outside the repository. The README does not describe how those extensions are vetted or what they can access. That is a gap to close by reading the inject and inner_source directories before you point the app at anything you did not write.

Editorial conclusion

EasyBangumi suits Android users who are comfortable running a Gradle build and maintaining a self-built APK, and who accept that every source comes from outside the project. It does not suit anyone expecting an official download or preloaded catalogue, because the README states the official project provides neither. Before committing, read the 须知 section in full, confirm the GPL-3.0 obligations that reach you once you distribute a build, and check the update log to see what the 6.1.x releases changed.

Frequently asked questions

Where can I download an official EasyBangumi APK?

The README states that the official project does not provide packaging or downloads, and that the source code is available on GitHub for users to download and package themselves. Any APK you find elsewhere was packaged by someone else, and the README says the project accepts no responsibility for those.

Does EasyBangumi come with anime content or sources built in?

No. The README says the packaged app provides no video content and that users must add it manually, and it lists 添加源管理 and a plugin system with a plugin market as the mechanisms for doing so. Content a user imports is described as unrelated to the software.

What licence is EasyBangumi released under?

The README states that from the version which introduced the libmpv playback engine, the project is released under GNU General Public License v3.0, and that historical versions remain under the licence they shipped with. Third-party components such as libmpv, mpv, FFmpeg and Anime4K keep their own copyright and licence notices.

Is there a PC or iOS version of EasyBangumi?

The development plan in the README lists a PC version as an unchecked item, and the project is an Android application built with Jetpack Compose. No iOS version appears in the plan or the README.

How do I build EasyBangumi from source?

The repository commits a Gradle wrapper at the project root, so the build starts from gradlew on Unix-like systems or gradlew.bat on Windows. The README itself gives no build steps, only the statement that users may download and package the source.

Official sources

  1. easybangumiorg/EasyBangumi on GitHub
  2. License: GPL-3.0
  3. Project website
  4. README
  5. Releases
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.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/easybangumiorg-easybangumi.svg)](https://hysenlabs.com/projects/easybangumiorg-easybangumi)