Youwes09/Moku

Cross-platform desktop app for manga, light novels, and anime, powered by the Tsunagu backend.

166

stars

558

commits

Svelte

primary language

Sep 11, 2026

updated

anime
desktop-app
light-novel
manga
reader
svelte
tauri

README

Moku

Release GitHub Downloads Stars Discord


Moku is a fast, minimal manga, novel and anime reader. It's a lightweight Tauri frontend for the Tsunagu backend — no Electron overhead. The desktop builds bundle Tsunagu and manage it for you.


Screenshots

Home
Search Tag Search Settings Preview Downloads Reader Settings

Features

  • Manga, novels and anime — one library, one reader shell; the right viewer (pages, scrolling text, or video player) mounts per title
  • Library management — organize titles into folders, track unread counts, filter by genre
  • Per-folder sorting & filtering — each folder has its own independent sort (unread, A–Z, recently read, latest chapter, and more) and publication status filter (Ongoing, Completed, Hiatus, etc.)
  • Built-in reader — single page, long strip, configurable fit modes, customizable keybinds; AniSkip intro/outro markers for anime
  • Tracking — link titles to AniList, two-way progress sync
  • Extension support — install and manage source extensions directly from the app; compatible with Mihon/Tachiyomi- and Aniyomi-format extension repositories, plus LNReader
  • Download management — queue and monitor chapter downloads with progress toasts
  • Automation — pre-download titles automatically and optionally delete chapters after reading (accessible from Series Detail)
  • Discord Rich Presence — shows title, current chapter, and elapsed timer in your Discord status; configurable in Settings → General
  • Bundled backend — the desktop app launches and supervises Tsunagu for you; no separate install
  • Multiple themes — Dark, Light, Midnight, Warm, High Contrast, and more
  • Auto-updates — in-app update checker with silent background notifications
  • Improved NSFW filtering — expanded tag parser gives the Hide NSFW setting better coverage across sources

Installation

Runs on Windows Runs on Linux Runs on macOS

Windows

winget:

winget install Moku.Moku

Thanks to @frozenKelp for setting up and maintaining the winget package through v0.9.0.

Or download the .exe installer from the releases page. The Tsunagu backend and a JRE are bundled.

Linux (Nix)

nix run github:moku-project/Moku

Add to your flake:

inputs.moku.url = "github:moku-project/Moku";

The Nix app pulls the Tsunagu backend from its flake and launches it for you. AppImage / deb packaging is a work in progress.

Linux (Arch, from git)

packaging/PKGBUILD builds the app from the latest commit:

git clone https://github.com/moku-project/Moku
cd Moku/packaging
makepkg -si

This packages the frontend only — install a tsunagu package or set TSUNAGU_BIN so the app has a backend to talk to (the /usr/bin/moku wrapper defaults TSUNAGU_BIN to /usr/bin/tsunagu when present).

Binary cache (Cachix)

Prebuilt artifacts are pushed to moku.cachix.org so you don't have to compile Moku or Tsunagu locally.

The cache is declared in flake.nix (nixConfig), so nix run/nix develop against this flake will offer to use it — accept the prompt, or pass --accept-flake-config:

nix run --accept-flake-config github:moku-project/Moku

To trust it permanently (recommended for CI and non-interactive use), add to /etc/nix/nix.conf (or ~/.config/nix/nix.conf):

extra-substituters = https://moku.cachix.org
extra-trusted-public-keys = moku.cachix.org-1:EnMXp6/uQVI6IRbKW0xEQylSYoV2N4vszOsoW6/Pq1s=

Or, with the Cachix CLI:

cachix use moku

On NixOS, add the two lines above under nix.settings instead.

macOS

Download the .dmg from the releases page.

Note: Builds are ad-hoc signed. On first launch you may need to run:

xattr -rd com.apple.quarantine /Applications/Moku.app

Requirements

The desktop and Nix builds bundle and launch Tsunagu automatically. To run against your own instance instead, start Tsunagu separately — Moku connects to http://127.0.0.1:6007 by default.

You can point Moku at any Tsunagu instance — local or remote — via Settings → General → Server URL.


Development

Prerequisites: Rust, Node.js, pnpm, and Tauri v2 prerequisites.

git clone https://github.com/moku-project/Moku
cd Moku
pnpm install
pnpm tauri:dev

Or with Nix (enable the binary cache first to skip compiling the toolchain):

nix develop
pnpm install
pnpm tauri:dev

Stack

Tauri v2Native app shell
Svelte 5 + SvelteKit 2 + TypeScriptUI
Vite 8Frontend bundler
Nixpkgs stdenvNix builds

Community

Questions, feedback, or just want to hang out — join the Discord.

Discord


License

Distributed under the Apache 2.0 License.


Disclaimer

Moku does not host or distribute any content. The developers have no affiliation with any content providers accessible through connected sources.

Contributors

Youwes09

495 commits

frozenKelp

27 commits

zerebos

24 commits

Youwes09/Moku

Cross-platform desktop app for manga, light novels, and anime, powered by the Tsunagu backend.

166

stars

558

commits

Svelte

primary language

Sep 11, 2026

updated

anime
desktop-app
light-novel
manga
reader
svelte
tauri

README

Moku

Release GitHub Downloads Stars Discord


Moku is a fast, minimal manga, novel and anime reader. It's a lightweight Tauri frontend for the Tsunagu backend — no Electron overhead. The desktop builds bundle Tsunagu and manage it for you.


Screenshots

Home
Search Tag Search Settings Preview Downloads Reader Settings

Features

  • Manga, novels and anime — one library, one reader shell; the right viewer (pages, scrolling text, or video player) mounts per title
  • Library management — organize titles into folders, track unread counts, filter by genre
  • Per-folder sorting & filtering — each folder has its own independent sort (unread, A–Z, recently read, latest chapter, and more) and publication status filter (Ongoing, Completed, Hiatus, etc.)
  • Built-in reader — single page, long strip, configurable fit modes, customizable keybinds; AniSkip intro/outro markers for anime
  • Tracking — link titles to AniList, two-way progress sync
  • Extension support — install and manage source extensions directly from the app; compatible with Mihon/Tachiyomi- and Aniyomi-format extension repositories, plus LNReader
  • Download management — queue and monitor chapter downloads with progress toasts
  • Automation — pre-download titles automatically and optionally delete chapters after reading (accessible from Series Detail)
  • Discord Rich Presence — shows title, current chapter, and elapsed timer in your Discord status; configurable in Settings → General
  • Bundled backend — the desktop app launches and supervises Tsunagu for you; no separate install
  • Multiple themes — Dark, Light, Midnight, Warm, High Contrast, and more
  • Auto-updates — in-app update checker with silent background notifications
  • Improved NSFW filtering — expanded tag parser gives the Hide NSFW setting better coverage across sources

Installation

Runs on Windows Runs on Linux Runs on macOS

Windows

winget:

winget install Moku.Moku

Thanks to @frozenKelp for setting up and maintaining the winget package through v0.9.0.

Or download the .exe installer from the releases page. The Tsunagu backend and a JRE are bundled.

Linux (Nix)

nix run github:moku-project/Moku

Add to your flake:

inputs.moku.url = "github:moku-project/Moku";

The Nix app pulls the Tsunagu backend from its flake and launches it for you. AppImage / deb packaging is a work in progress.

Linux (Arch, from git)

packaging/PKGBUILD builds the app from the latest commit:

git clone https://github.com/moku-project/Moku
cd Moku/packaging
makepkg -si

This packages the frontend only — install a tsunagu package or set TSUNAGU_BIN so the app has a backend to talk to (the /usr/bin/moku wrapper defaults TSUNAGU_BIN to /usr/bin/tsunagu when present).

Binary cache (Cachix)

Prebuilt artifacts are pushed to moku.cachix.org so you don't have to compile Moku or Tsunagu locally.

The cache is declared in flake.nix (nixConfig), so nix run/nix develop against this flake will offer to use it — accept the prompt, or pass --accept-flake-config:

nix run --accept-flake-config github:moku-project/Moku

To trust it permanently (recommended for CI and non-interactive use), add to /etc/nix/nix.conf (or ~/.config/nix/nix.conf):

extra-substituters = https://moku.cachix.org
extra-trusted-public-keys = moku.cachix.org-1:EnMXp6/uQVI6IRbKW0xEQylSYoV2N4vszOsoW6/Pq1s=

Or, with the Cachix CLI:

cachix use moku

On NixOS, add the two lines above under nix.settings instead.

macOS

Download the .dmg from the releases page.

Note: Builds are ad-hoc signed. On first launch you may need to run:

xattr -rd com.apple.quarantine /Applications/Moku.app

Requirements

The desktop and Nix builds bundle and launch Tsunagu automatically. To run against your own instance instead, start Tsunagu separately — Moku connects to http://127.0.0.1:6007 by default.

You can point Moku at any Tsunagu instance — local or remote — via Settings → General → Server URL.


Development

Prerequisites: Rust, Node.js, pnpm, and Tauri v2 prerequisites.

git clone https://github.com/moku-project/Moku
cd Moku
pnpm install
pnpm tauri:dev

Or with Nix (enable the binary cache first to skip compiling the toolchain):

nix develop
pnpm install
pnpm tauri:dev

Stack

Tauri v2Native app shell
Svelte 5 + SvelteKit 2 + TypeScriptUI
Vite 8Frontend bundler
Nixpkgs stdenvNix builds

Community

Questions, feedback, or just want to hang out — join the Discord.

Discord


License

Distributed under the Apache 2.0 License.


Disclaimer

Moku does not host or distribute any content. The developers have no affiliation with any content providers accessible through connected sources.

Contributors

Youwes09

495 commits

frozenKelp

27 commits

zerebos

24 commits

Languages

Svelte

75.1%

TypeScript

18.4%

CSS

2.6%

Rust

2.1%