No description
  • Java 51.5%
  • TypeScript 25.5%
  • Kotlin 13.3%
  • Svelte 7.6%
  • JavaScript 1.4%
  • Other 0.6%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
wnbe 31fe85eb9a
Some checks failed
CI / bridge (push) Failing after 2s
Edge Image / bridge-runtime (push) Failing after 3s
CI / web (push) Failing after 38s
Edge Image / base (push) Failing after 37s
Edge Image / web-runtime (push) Successful in 1m20s
Edge Image / publish (push) Has been skipped
CI / runtime-smoke (push) Failing after 1m45s
feat(titles): unify previews and expand title management
Add metadata editing, source and duplicate management, recommendations, chapter tools, and private notes to the shared title experience. Preserve ambiguous chapter history during volume repairs and stabilize reader page links.
2026-10-30 13:06:35 +03:00
.forgejo/workflows fix(ci): normalize convex admin key 2026-09-16 04:17:24 +03:00
audits docs(audit): add integrations architecture baseline 2026-09-27 08:44:50 +03:00
bridge feat(anilist): automate metadata matching with Codex 2026-09-27 08:44:51 +03:00
docs refactor(reader): remove obsolete protocol projections 2026-09-27 08:44:51 +03:00
scripts feat(dev): add hot staging UI preview 2026-09-27 11:13:11 +03:00
web feat(titles): unify previews and expand title management 2026-10-30 13:06:35 +03:00
.dockerignore fix(deploy): isolate verification and document database backups 2026-09-05 10:56:25 +03:00
.gitignore fix(deploy): isolate verification and document database backups 2026-09-05 10:56:25 +03:00
compose.dev.yaml fix(convex): sync embeddings config 2026-09-15 21:11:19 +03:00
compose.verify.yaml refactor: remove first-run setup workflow 2026-09-15 13:02:24 +03:00
compose.yaml chore(security): remove legacy AniList key config 2026-09-27 08:44:50 +03:00
Dockerfile feat(ai): add experimental Codex subscription support 2026-09-27 08:44:51 +03:00
Dockerfile.ci fix(runtime): stabilize backend readiness and verification 2026-09-15 13:02:24 +03:00
Justfile feat(integrations): scope integration API keys 2026-09-27 08:44:50 +03:00
LICENSE chore: initialize version 2.0.0 for rewrite 2025-11-10 06:43:27 +03:00
README.md fix(runtime): stabilize backend readiness and verification 2026-09-15 13:02:24 +03:00

Mangarr

Mangarr is a self-hosted manga manager built around a SvelteKit web app, a self-hosted Convex backend, and a Kotlin bridge that handles source access, downloads, and reader-side file serving.

What It Does

  • browse and search Tachiyomi-compatible sources
  • import titles into a local library with statuses, collections, and progress
  • download chapters and read them in the browser
  • manage extensions, source preferences, proxy settings, and integration keys

Quick Start

Development:

docker compose -f compose.dev.yaml up --build

Production example:

MANGARR_IMAGE=ghcr.io/tftiwnbe/mangarr:sha-<git-sha> \
docker compose up -d

Repo-built runtime with explicit host mounts:

MANGARR_HOST_CONFIG_DIR=./config \
MANGARR_HOST_DOWNLOADS_DIR=./data \
MANGARR_HOST_POSTGRES_DIR=./postgres \
MANGARR_HOST_EMBEDDINGS_DIR=./embeddings \
docker compose up -d --build

Images:

  • ghcr.io/tftiwnbe/mangarr:edge
  • ghcr.io/tftiwnbe/mangarr:sha-<git-sha>

For production, prefer a pinned sha-... tag or image digest over a floating channel.

Current published runtime images target linux/amd64, which is also the supported container path for the embedded KCEF runtime.

Docs

Project Layout

  • web/ SvelteKit runtime plus Convex functions; see web/README.md for the backend/frontend boundary
  • bridge/ Kotlin/JVM bridge runtime
  • config/ persisted runtime state, extensions, auth material, and logs
  • data/ downloaded chapter files
  • postgres/ Convex's PostgreSQL database (required in backups along with config/ and data/)

Credits

Mangarr builds on ideas and implementation work from the Tachiyomi ecosystem.

  • The server-side foundation and extension-oriented workflow were heavily influenced by the earlier TachiWeb and Tachidesk line of projects.
  • Large parts of the bridge-side extension runtime and self-hosted source workflow were adapted from or directly inspired by Suwayomi-Server.
  • The AndroidCompat module was originally developed by @null-dev and remains an important part of making extension code run on the JVM side.
  • Keiyoushi Extensions provides the extension catalog Mangarr uses through its bridge runtime.
  • The broader extension author community made the source ecosystem this project depends on possible in the first place.

Please keep the original upstream licenses and attribution in mind when reusing or redistributing derivative work.

License

Mangarr is licensed under the GNU Affero General Public License v3.0. See LICENSE.