gitmyhub

animeko

Kotlin ★ 18k updated 21h ago

集找番、追番、看番的一站式弹幕追番平台,云收藏同步 (Bangumi),离线缓存,BitTorrent,弹幕云过滤。100% Kotlin/Compose Multiplatform

An open-source anime-watching app for Android, iOS, Windows, macOS, and Linux that combines episode tracking, multiple video sources including BitTorrent, progress sync via Bangumi, and scrolling comment overlays in one place.

KotlinKotlin MultiplatformCompose MultiplatformExoPlayerVLClibtorrentsetup: moderatecomplexity 3/5

Animeko is an anime-watching app that brings together episode browsing, viewing progress sync, multiple video sources, and bullet-comment overlays (danmaku) into one place. It started as a project called Ani and is still informally called that. The idea is to give anime fans a single home for finding what to watch, tracking which episodes they have seen, and playing them with the social commentary layer popular on Chinese and Japanese video sites.

The app connects to Bangumi, an anime-tracking community, for show metadata, community ratings, release timetables, and tag-based search. Viewing progress syncs through the same account, so closing the app on one device and opening it on another picks up where the last episode left off. For the actual videos, Animeko aggregates multiple data sources rather than hosting anything itself: BitTorrent, Jellyfin, Emby, and custom user-defined sources are all supported, and the app picks among them automatically. Bullet comments come from public danmaku services as well as Animeko's own danmaku service, and everything can be cached for offline viewing. The interface adapts to phones, tablets, and large screens.

Animeko runs on Android, iOS, Windows, macOS, and Linux. It is built with Kotlin Multiplatform and Compose Multiplatform for the shared user interface. The BitTorrent layer is built on libtorrent and tuned for streaming while still downloading; the video player uses ExoPlayer on Android and VLC on desktop. Someone would reach for Animeko if they want one unified anime client across all their devices instead of juggling separate apps and sources.

Where it fits