Catalyst is a Flutter frontend for Suwayomi Server — a self-hosted manga server. It features a completely redesigned UI with Material You dynamic colour on Android and a native Cupertino glass UI on iOS/iPad.
Requires a running Suwayomi Server instance. See the Suwayomi Server setup guide to get started.
- Full reader — Continuous webtoon, single page, LTR/RTL, spread mode, volume key support
- Redesigned screens — History, Library with filter chips, Explore, Feed (updates), Downloads
- Material You — Dynamic colour from your wallpaper on Android 12+
- iOS & iPad UI — Cupertino shell with frosted glass tab bar and sidebar on iPad
- Tracker support — MyAnimeList, AniList, Kitsu, Bangumi, MangaUpdates, Shikimori
- Device downloads — Save chapters to local storage from the chapter list (phone/tablet icon)
- Offline reading — Open downloaded chapters from Browse → Downloads → Offline when the server is unreachable; progress is saved locally and syncs when back online
- Server status — Offline banner when the API is down; configurable request timeouts
- Migration — Move manga between sources with optional category, chapter, download, and tracker transfer
- Adaptive icon — Squircle/circle/teardrop on Android 8+
- Linux desktop — GTK build for development and testing
Head to Releases and grab the right file:
| File | Use for |
|---|---|
app-arm64-v8a-release.apk |
Most Android phones (2016+, recommended) |
app-armeabi-v7a-release.apk |
Older 32-bit ARM Android |
app-x86_64-release.apk |
Android emulators / x86 tablets |
Catalyst-v6.0.0-unsigned.ipa |
iPhone / iPad — sideload via AltStore or Sideloadly (not App Store) |
Most users need one Android APK (arm64) plus the IPA if they use iOS.
- Install and run Suwayomi Server (Docker, JAR, or native).
- Install Catalyst from Releases.
- In Catalyst → Settings → Server, enter your server URL (e.g.
http://192.168.1.10:4567or a Tailscale address). - Add extensions and manga through the server, then browse your library in Catalyst.
Requirements: Flutter 3.x (stable), Dart 3.x, JDK 17 for Android
git clone https://github.com/just-for-death/catalyst.git
cd catalyst
flutter pub get
dart run build_runner build --delete-conflicting-outputs # if you change @riverpod / GraphQL
flutter run # debug on connected device
flutter build apk --release --split-per-abi # release APKs (3 ABIs)
flutter build ipa --release --no-codesign # unsigned IPA (macOS + Xcode)
flutter run -d linux # Linux desktopRelease Android builds use R8 minification. If Gradle fails at minifyReleaseWithR8, ensure android/app/proguard-rules.pro includes the Play Core -dontwarn rules shipped in this repo.
CI builds are defined in codemagic.yaml (ios-release, android-release, and tag-triggered all-release).
Catalyst stands on the shoulders of several great open-source projects. Huge thanks to everyone who built and maintains them.
| Project | Role |
|---|---|
| Tachidesk-Sorayomi by Suwayomi | The original Flutter client Catalyst is forked from. Core logic, GraphQL layer, reader, tracker integration, and data architecture come from this project. |
| Suwayomi-Server by Suwayomi | The self-hosted backend Catalyst connects to. Handles sources, downloads, library management, and tracking sync. |
| Project | Role |
|---|---|
| Futon by AppFuton | Android UI patterns — Home grid, Explore layout, Feed headers, Library filter chips, bottom navigation. |
| Aidoku by Aidoku | iOS/iPadOS UI — Cupertino shell, glass tab bar, large titles, iPad sidebar. |
Catalyst talks to your Suwayomi server using a URL you configure.
- HTTP on a trusted LAN is common for self-hosted setups. If the server is reachable from untrusted networks, prefer HTTPS so traffic and Basic auth are not sent in the clear.
- Basic authentication: credentials are stored in the OS secure store (Keychain / Keystore) after migration from older preference storage.
- Android: cleartext HTTP and user-installed CAs are allowed for local/self-signed servers (
network_security_config.xml). - iOS: local network HTTP is allowed via App Transport Security (
NSAllowsLocalNetworking).
Pull requests are welcome. For major changes please open an issue first.
- Fork the repo
- Create your branch:
git checkout -b feature/my-feature - Commit:
git commit -m 'feat: add my feature' - Push:
git push origin feature/my-feature - Open a Pull Request
Catalyst is a derivative work of Tachidesk-Sorayomi, which is also licensed under MPL-2.0. Per the terms of MPL-2.0, all modifications are made available under the same license.