Mayo commited on
Commit
0e8f75a
·
unverified ·
1 Parent(s): e8436c0

docs: add site

Browse files
.github/workflows/docs.yml ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Documentation
2
+ on:
3
+ push:
4
+ branches:
5
+ - master
6
+ - main
7
+ permissions:
8
+ contents: read
9
+ pages: write
10
+ id-token: write
11
+ jobs:
12
+ deploy:
13
+ environment:
14
+ name: github-pages
15
+ url: ${{ steps.deployment.outputs.page_url }}
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - uses: actions/configure-pages@v5
19
+ - uses: actions/checkout@v5
20
+ - uses: actions/setup-python@v5
21
+ with:
22
+ python-version: 3.x
23
+ - run: pip install zensical
24
+ - run: zensical build --clean
25
+ - uses: actions/upload-pages-artifact@v4
26
+ with:
27
+ path: site
28
+ - uses: actions/deploy-pages@v4
29
+ id: deployment
.gitignore CHANGED
@@ -54,4 +54,6 @@ test-results/
54
  AGENTS.md
55
  claudedocs/
56
  /.claude
57
- /.serena
 
 
 
54
  AGENTS.md
55
  claudedocs/
56
  /.claude
57
+
58
+ # Zensical
59
+ site/
README.md CHANGED
@@ -1,7 +1,5 @@
1
  # Koharu
2
 
3
- [日本語](./docs/README.ja.md) | [简体中文](./docs/README.zh-CN.md) | [Русский](./docs/README.ru.md)
4
-
5
  ML-powered manga translator, written in **Rust**.
6
 
7
  Koharu introduces a new workflow for manga translation, utilizing the power of ML to automate the process. It combines the capabilities of object detection, OCR, inpainting, and LLMs to create a seamless translation experience.
@@ -13,7 +11,7 @@ Under the hood, Koharu uses [candle](https://github.com/huggingface/candle) for
13
 
14
  ---
15
 
16
- ![screenshot](assets/koharu-screenshot-en.png)
17
 
18
  > [!NOTE]
19
  > For help and support, please join our [Discord server](https://discord.gg/mHvHkxGnUY).
 
1
  # Koharu
2
 
 
 
3
  ML-powered manga translator, written in **Rust**.
4
 
5
  Koharu introduces a new workflow for manga translation, utilizing the power of ML to automate the process. It combines the capabilities of object detection, OCR, inpainting, and LLMs to create a seamless translation experience.
 
11
 
12
  ---
13
 
14
+ ![screenshot](docs/assets/koharu-screenshot-en.png)
15
 
16
  > [!NOTE]
17
  > For help and support, please join our [Discord server](https://discord.gg/mHvHkxGnUY).
docs/README.ja.md DELETED
@@ -1,205 +0,0 @@
1
- # Koharu
2
-
3
- **Rust**で書かれた、ML(機械学習)搭載のマンガ翻訳ツールです。
4
-
5
- Koharu は、ML の力を活用して翻訳工程を自動化する、新しいマンガ翻訳ワークフローを提供します。物体検出、OCR、インペインティング、LLM を組み合わせることで、シームレスな翻訳体験を実現します。
6
-
7
- 内部では、高性能推論のために [candle](https://github.com/huggingface/candle) を使用し、GUI には [Tauri](https://github.com/tauri-apps/tauri) を採用しています。すべてのコンポーネントが Rust で書かれており、安全性と高速性を両立しています。
8
-
9
- > [!NOTE]
10
- > Koharu は既定で、ビジョンモデルとローカル LLM を **お使いの端末上** で実行します。リモート LLM プロバイダーを選択した場合、翻訳対象のテキストのみが設定したプロバイダーへ送信されます。Koharu 自体がユーザーデータを収集することはありません。
11
-
12
- ---
13
-
14
- ![スクリーンショット](../assets/koharu-screenshot-ja.png)
15
-
16
- > [!NOTE]
17
- > ヘルプやサポートについては、[Discord サーバー](https://discord.gg/mHvHkxGnUY)に参加してください。
18
-
19
- ## 特徴
20
-
21
- - セリフ(吹き出し)の自動検出とセグメンテーション
22
- - マンガ文字の認識のための OCR
23
- - 画像から元の文字を消すためのインペインティング
24
- - LLM による翻訳
25
- - CJK(中国語・日本語・韓国語)向けの縦書きレイアウト
26
- - 編集可能なテキスト付きのレイヤー PSD 書き出し
27
- - AI エージェントとの連携のための MCP サーバー
28
-
29
- ## 使い方
30
-
31
- ### ホットキー
32
-
33
- - <kbd>Ctrl</kbd> + マウスホイール: 拡大/縮小
34
- - <kbd>Ctrl</kbd> + ドラッグ: キャンバスのパン(移動)
35
- - <kbd>Del</kbd>: 選択したテキストブロックを削除
36
-
37
- ### 書き出し
38
-
39
- Koharu は現在のページをレンダリング済み画像として書き出すだけでなく、レイヤー付きの Photoshop PSD としても書き出せます。PSD 書き出しでは補助レイヤーを保持しつつ、翻訳済みテキストを編集可能なテキストレイヤーとして保存できます。
40
-
41
- ### MCP サーバー
42
-
43
- Koharu には MCP サーバーが内蔵されており、AI エージェントとの連携に使用できます。デフォルトでは、MCP サーバーはランダムなポートでリッスンしますが、`--port` フラグを使用してポートを指定できます。
44
-
45
- ```bash
46
- # macOS / Linux
47
- koharu --port 9999
48
- # Windows
49
- koharu.exe --port 9999
50
- ```
51
-
52
- AI エージェントの MCP サーバー URL フィールドに `http://localhost:9999/mcp` と入力してください。
53
-
54
- ### ヘッドレスモード
55
-
56
- Koharu はコマンドラインからヘッドレスモードで実行できます。
57
-
58
- ```bash
59
- # macOS / Linux
60
- koharu --port 4000 --headless
61
- # Windows
62
- koharu.exe --port 4000 --headless
63
- ```
64
-
65
- これで、`http://localhost:4000` から Koharu Web UI にアクセスできます。
66
-
67
- ### ファイルの関連付け
68
-
69
- Windows では、Koharu が自動的に `.khr` ファイルを関連付けるため、ダブルクリックで開けます。`.khr` ファイルは、内部に含まれる画像のサムネイルを表示するために、画像として開くこともできます。
70
-
71
- ## GPU アクセラレーション
72
-
73
- CUDA と Metal による GPU アクセラレーションに対応しており、対応ハードウェアでは性能が大きく向上します。
74
-
75
- ### CUDA
76
-
77
- Koharu は CUDA 対応ビルドが用意されており、NVIDIA GPU を活用してより高速に処理できます。
78
-
79
- Koharu には CUDA toolkit 13.1 と cuDNN 9.19 が同梱されており、dylib は初回起動時にアプリケーションデータディレクトリへ自動的に展開されます。
80
-
81
- > [!NOTE]
82
- > 最新の NVIDIA ドライバーがインストールされていることを確認してください。最新のドライバーは [NVIDIA App](https://www.nvidia.com/en-us/software/nvidia-app/) からダウンロードできます。
83
-
84
- #### 対応する NVIDIA GPU
85
-
86
- Koharu は、Compute Capability 7.5 以上の NVIDIA GPU に対応しています。
87
-
88
- お使いの GPU が対応しているかは、[CUDA GPU Compute Capability](https://developer.nvidia.com/cuda-gpus) と [cuDNN Support Matrix](https://docs.nvidia.com/deeplearning/cudnn/backend/latest/reference/support-matrix.html) を確認してください。
89
-
90
- ### Metal
91
-
92
- Koharu は Apple Silicon(M1、M2 など)を搭載した macOS で Metal による GPU アクセラレーションに対応しています。これにより、幅広い Apple デバイスで効率的に動作します。
93
-
94
- ### CPU フォールバック
95
-
96
- 推論に CPU を使うよう強制することもできます。
97
-
98
- ```bash
99
- # macOS / Linux
100
- koharu --cpu
101
- # Windows
102
- koharu.exe --cpu
103
- ```
104
-
105
- ## ML モデル
106
-
107
- Koharu は、コンピュータビジョンと自然言語処��のモデルを組み合わせて各処理を実行します。
108
-
109
- ### コンピュータビジョンモデル
110
-
111
- Koharu は用途ごとに複数の学習済みモデルを使用します。
112
-
113
- - [PP-DocLayoutV3](https://huggingface.co/PaddlePaddle/PP-DocLayoutV3_safetensors) テキスト検出とレイアウト分析のため
114
- - [comic-text-detector](https://huggingface.co/mayocream/comic-text-detector) テキストセグメンテーションのため
115
- - [PaddleOCR-VL-1.5](https://huggingface.co/PaddlePaddle/PaddleOCR-VL-1.5) OCR テキスト認識のため
116
- - [lama-manga](https://huggingface.co/mayocream/lama-manga) インペインティングのため
117
- - [YuzuMarker.FontDetection](https://huggingface.co/fffonion/yuzumarker-font-detection) フォントと色の検出のため
118
-
119
- モデルは Koharu を初めて実行した際に自動的にダウンロードされます。
120
-
121
- Koharu では、性能と Rust との互換性を高めるため、元のモデルを safetensors 形式へ変換しています。変換済みモデルは [Hugging Face](https://huggingface.co/mayocream) 上でホストしています。
122
-
123
- ### 大規模言語モデル(LLM)
124
-
125
- Koharu はローカル LLM とリモート LLM の両方に対応しており、可能な場合はシステムのロケール設定に基づいてモデルを事前選択します。
126
-
127
- #### ローカル LLM
128
-
129
- Koharu は [candle](https://github.com/huggingface/candle) を通じて、GGUF 形式の量子化 LLM を利用できます。これらのモデルは端末上で動作し、設定で選択したタイミングで必要に応じて自動ダウンロードされます。対応モデルと推奨用途は以下の通りです。
130
-
131
- 英語への翻訳:
132
-
133
- - [vntl-llama3-8b-v2](https://huggingface.co/lmg-anon/vntl-llama3-8b-v2-gguf): Q8_0 の重みサイズが約 8.5 GB。精度を最優先したい場合に最適で、VRAM 10 GB 以上、または CPU 推論なら十分なシステム RAM を推奨します。
134
- - [lfm2-350m-enjp-mt](https://huggingface.co/LiquidAI/LFM2-350M-ENJP-MT-GGUF): 超軽量(約 350M、Q8_0)。CPU や低メモリ GPU でも快適に動作し、クイックプレビューや低スペック環境に最適ですが、品質は低下します。
135
-
136
- 中国語への翻訳:
137
-
138
- - [sakura-galtransl-7b-v3.7](https://huggingface.co/SakuraLLM/Sakura-GalTransl-7B-v3.7): 約 6.3 GB。VRAM 8 GB に収まり、品質と速度のバランスが良好です。
139
- - [sakura-1.5b-qwen2.5-v1.0](https://huggingface.co/shing3232/Sakura-1.5B-Qwen2.5-v1.0-GGUF-IMX): 軽量(約 1.5B、Q5KS)。ミドルレンジ GPU(VRAM 4〜6 GB)や CPU のみの環境でも、適度な RAM があれば動作します。7B/8B より高速で、Qwen 系トークナイザの挙動も維持します。
140
-
141
- その他の言語:
142
-
143
- - [hunyuan-7b-mt-v1.0](https://huggingface.co/Mungert/Hunyuan-MT-7B-GGUF): 約 6.3GB。VRAM 8 GB に収まり、マルチ言語の翻訳品質も良好です。
144
-
145
- LLM は、設定でモデルを選択したタイミングで必要に応じて自動ダウンロードされます。メモリが限られている場合は、品質要件を満たす範囲で最小のモデルを選んでください。十分な VRAM/RAM がある場合は、より良い翻訳のために 7B/8B 系を推奨します。
146
-
147
- #### リモート LLM
148
-
149
- Koharu は、ローカルモデルをダウンロードしなくても、リモートまたはセルフホストの API プロバイダー経由で翻訳できます。対応するリモートプロバイダーは以下の通りです。
150
-
151
- - OpenAI
152
- - Gemini
153
- - Claude
154
- - DeepSeek
155
- - OpenAI Compatible: LM Studio、OpenRouter、または OpenAI 形式の `/v1/models` と `/v1/chat/completions` API を提供する任意のエンドポイント
156
-
157
- リモートプロバイダーは **Settings > API Keys** で設定します。OpenAI Compatible ではカスタムの Base URL も指定します。LM Studio のようなローカルサーバーでは API キーが不要な場合がありますが、OpenRouter のようなホスト型サービスでは通常 API キーが必要です。
158
-
159
- ローカルモデルのダウンロードを避けたい場合、端末側の VRAM/RAM 使用量を抑えたい場合、またはホスト型モデルへ接続したい場合は、リモートプロバイダーを利用してください。翻訳対象として選択した OCR テキストは、設定したプロバイダーへ送信されます。
160
-
161
- ## インストール
162
-
163
- 最新のリリースは [releases ページ](https://github.com/mayocream/koharu/releases/latest) からダウンロードできます。
164
-
165
- Windows、macOS、Linux 向けにビルド済みバイナリを提供しています。その他のプラットフォームではソースからビルドが必要な場合があります。詳細は下記の [開発](#開発) セクションを参照してください。
166
-
167
- ## 開発
168
-
169
- Koharu をソースからビルドするには、以下の手順に従ってください。
170
-
171
- ### 前提条件
172
-
173
- - [Rust](https://www.rust-lang.org/tools/install)(1.92 以上)
174
- - [Bun](https://bun.sh/)(1.0 以上)
175
-
176
- ### 依存関係のインストール
177
-
178
- ```bash
179
- bun install
180
- ```
181
-
182
- ### ビルド
183
-
184
- ```bash
185
- bun run build
186
- ```
187
-
188
- ビルドされたバイナリは `target/release` ディレクトリに生成されます。
189
-
190
- ## スポンサー
191
-
192
- Koharu が役に立った場合は、開発支援のためにスポンサーをご検討ください。
193
-
194
- - [GitHub Sponsors](https://github.com/sponsors/mayocream)
195
- - [Patreon](https://www.patreon.com/mayocream)
196
-
197
- ## 貢献者
198
-
199
- <a href="https://github.com/mayocream/koharu/graphs/contributors">
200
- <img src="https://contrib.rocks/image?repo=mayocream/koharu" />
201
- </a>
202
-
203
- ## ライセンス
204
-
205
- Koharu は [GNU General Public License v3.0](../LICENSE) の下でライセンスされています。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
docs/README.ru.md DELETED
@@ -1,205 +0,0 @@
1
- # Koharu
2
-
3
- Переводчик манги на основе ML, написанный на **Rust**.
4
-
5
- Koharu предлагает новый рабочий процесс перевода манги, используя возможности машинного обучения для автоматизации. Он объединяет детекцию объектов, OCR, инпейнтинг и LLM для создания бесшовного процесса перевода.
6
-
7
- Под капотом Koharu использует [candle](https://github.com/huggingface/candle) для высокопроизводительного инференса и [Tauri](https://github.com/tauri-apps/tauri) для графического интерфейса. Все компоненты написаны на Rust, что обеспечивает безопасность и скорость.
8
-
9
- > [!NOTE]
10
- > По умолчанию Koharu запускает модели компьютерного зрения и локальные LLM **на вашем устройстве**. Если вы выберете удалённого LLM-провайдера, Koharu отправляет провайдеру только текст для перевода. Koharu не собирает пользовательские данные.
11
-
12
- ---
13
-
14
- ![скриншот](../assets/koharu-screenshot-en.png)
15
-
16
- > [!NOTE]
17
- > Для помощи и поддержки присоединяйтесь к нашему [Discord-серверу](https://discord.gg/mHvHkxGnUY).
18
-
19
- ## Возможности
20
-
21
- - Автоматическое обнаружение и сегментация речевых пузырей
22
- - OCR для распознавания текста в манге
23
- - Инпейнтинг для удаления исходного текста с изображений
24
- - Перевод с помощью LLM
25
- - Вертикальная вёрстка текста для CJK-языков
26
- - Экспорт в многослойный PSD с редактируемым текстом
27
- - MCP-сервер для интеграции с ИИ-агентами
28
-
29
- ## Использование
30
-
31
- ### Горячие клавиши
32
-
33
- - <kbd>Ctrl</kbd> + колесо мыши: масштабирование
34
- - <kbd>Ctrl</kbd> + перетаскивание: панорамирование холста
35
- - <kbd>Del</kbd>: удалить выбранный текстовый блок
36
-
37
- ### Экспорт
38
-
39
- Koharu может экспортировать текущую страницу как отрендеренное изображение или как многослойный PSD для Photoshop. При экспорте в PSD сохраняются вспомогательные слои, а переведённый текст записывается как редактируемые текстовые слои для дальнейшей доработки в Photoshop.
40
-
41
- ### MCP-сервер
42
-
43
- Koharu имеет встроенный MCP-сервер для интеграции с ИИ-агентами. По умолчанию MCP-сервер слушает на случайном порту, но порт можно указать с помощью флага `--port`.
44
-
45
- ```bash
46
- # macOS / Linux
47
- koharu --port 9999
48
- # Windows
49
- koharu.exe --port 9999
50
- ```
51
-
52
- Введите `http://localhost:9999/mcp` в поле URL MCP-сервера вашего ИИ-агента.
53
-
54
- ### Безголовый режим
55
-
56
- Koharu можно запустить в безголовом режиме через командную строку.
57
-
58
- ```bash
59
- # macOS / Linux
60
- koharu --port 4000 --headless
61
- # Windows
62
- koharu.exe --port 4000 --headless
63
- ```
64
-
65
- Теперь вы можете открыть веб-интерфейс Koharu по адресу `http://localhost:4000`.
66
-
67
- ### Ассоциация файлов
68
-
69
- В Windows Koharu автоматически ассоциируется с файлами `.khr`, так что их можно открывать двойным щелчком. Файлы `.khr` также можно открывать как изображения для просмотра миниатюр содержащихся в них изображений.
70
-
71
- ## Ускорение на GPU
72
-
73
- Поддерживается ускорение на GPU через CUDA и Metal, что значительно повышает производительность на совместимом оборудовании.
74
-
75
- ### CUDA
76
-
77
- Koharu собран с поддержкой CUDA, что позволяет использовать мощность GPU NVIDIA для ускорения обработки.
78
-
79
- Koharu включает CUDA toolkit 13.1 и cuDNN 9.19, динамические библиотеки автоматически извлекаются в каталог данных приложения при первом запуске.
80
-
81
- > [!NOTE]
82
- > Убедитесь, что у вас установлены последние драйверы NVIDIA. Скачать последние драйверы можно через [NVIDIA App](https://www.nvidia.com/en-us/software/nvidia-app/).
83
-
84
- #### Поддерживаемые GPU NVIDIA
85
-
86
- Koharu поддерживает GPU NVIDIA с Compute Capability 7.5 и выше.
87
-
88
- Проверьте совместимость вашего GPU: [CUDA GPU Compute Capability](https://developer.nvidia.com/cuda-gpus) и [cuDNN Support Matrix](https://docs.nvidia.com/deeplearning/cudnn/backend/latest/reference/support-matrix.html).
89
-
90
- ### Metal
91
-
92
- Koharu поддерживает Metal для ускорения на GPU в macOS с Apple Silicon (M1, M2 и т.д.). Это позволяет эффективно работать на широком спектре устройств Apple.
93
-
94
- ### Откат на CPU
95
-
96
- Вы всегда можете принудительно использовать CPU для инференса:
97
-
98
- ```bash
99
- # macOS / Linux
100
- koharu --cpu
101
- # Windows
102
- koharu.exe --cpu
103
- ```
104
-
105
- ## ML-модели
106
-
107
- Koharu использует комбинацию моделей компьютерного зрения и обработки естественного языка.
108
-
109
- ### Модели компьютерного зрения
110
-
111
- Koharu использует несколько предобученных моделей для различных задач:
112
-
113
- - [PP-DocLayoutV3](https://huggingface.co/PaddlePaddle/PP-DocLayoutV3_safetensors) для детекции текста и анализа макета
114
- - [comic-text-detector](https://huggingface.co/mayocream/comic-text-detector) для сегментации текста
115
- - [PaddleOCR-VL-1.5](https://huggingface.co/PaddlePaddle/PaddleOCR-VL-1.5) для распознавания текста (OCR)
116
- - [lama-manga](https://huggingface.co/mayocream/lama-manga) для инпейнтинга
117
- - [YuzuMarker.FontDetection](https://huggingface.co/fffonion/yuzumarker-font-detection) для определения шрифта и цвета
118
-
119
- Модели автоматически загружаются при первом запуске Koharu.
120
-
121
- Мы конвертируем оригинальные модели в формат safetensors для лучшей производительности и совместимости с Rust. Конвертированные модели размещены на [Hugging Face](https://huggingface.co/mayocream).
122
-
123
- ### Большие языковые модели (LLM)
124
-
125
- Koharu поддерживает как локальные, так и удалённые LLM-бэкенды и по возможности предварительно выбирает модель на основе системной локали.
126
-
127
- #### Локальные LLM
128
-
129
- Koharu поддерживает различные квантизированные LLM в формате GGUF через [candle](https://github.com/huggingface/candle). Эти модели работают на вашем устройстве и загружаются по запросу при выборе в настройках. Поддерживаемые модели и рекомендации:
130
-
131
- Для перевода на английский:
132
-
133
- - [vntl-llama3-8b-v2](https://huggingface.co/lmg-anon/vntl-llama3-8b-v2-gguf): ~8.5 ГБ (Q8_0). Рекомендуется VRAM ≥10 ГБ или достаточно оперативной памяти для CPU-инференса. Лучший выбор, когда важна точность.
134
- - [lfm2-350m-enjp-mt](https://huggingface.co/LiquidAI/LFM2-350M-ENJP-MT-GGUF): сверхлёгкая (~350M, Q8_0). Комфортно работает на CPU и GPU с малым объёмом памяти. Идеальна для быстрого предпросмотра или слабых машин, но качество ниже.
135
-
136
- Для перевода на китайский:
137
-
138
- - [sakura-galtransl-7b-v3.7](https://huggingface.co/SakuraLLM/Sakura-GalTransl-7B-v3.7): ~6.3 ГБ, помещается в 8 ГБ VRAM. Хороший баланс качества и скорости.
139
- - [sakura-1.5b-qwen2.5-v1.0](https://huggingface.co/shing3232/Sakura-1.5B-Qwen2.5-v1.0-GGUF-IMX): лёгкая (~1.5B, Q5KS). Подходит для GPU среднего уровня (4–6 ГБ VRAM) или CPU с достаточным объёмом RAM. Быстрее 7B/8B моделей.
140
-
141
- Для других языков:
142
-
143
- - [hunyuan-7b-mt-v1.0](https://huggingface.co/Mungert/Hunyuan-MT-7B-GGUF): ~6.3 ГБ, помещается в 8 ГБ VRAM. Достойное качество мультиязычного перевода.
144
-
145
- LLM автоматически загружаются при выборе модели в настройках. Если память ограничена, выбирайте наименьшую модель, удовлетворяющую вашим требованиям к качеству. При достаточном объёме VRAM/RAM предпочтительны моде��и 7B/8B для лучшего перевода.
146
-
147
- #### Удалённые LLM
148
-
149
- Koharu также может переводить через удалённые или самостоятельно размещённые API-провайдеры вместо загруженной локальной модели. Поддерживаемые удалённые провайдеры:
150
-
151
- - OpenAI
152
- - Gemini
153
- - Claude
154
- - DeepSeek
155
- - OpenAI Compatible: LM Studio, OpenRouter или любой эндпоинт, предоставляющий API в стиле OpenAI (`/v1/models` и `/v1/chat/completions`)
156
-
157
- Удалённые провайдеры настраиваются в **Настройки > API-ключи**. Для OpenAI Compatible также указывается пользовательский Base URL. API-ключи необязательны для локальных серверов вроде LM Studio, но обычно требуются для размещённых сервисов вроде OpenRouter.
158
-
159
- Используйте удалённых провайдеров, если хотите избежать загрузки локальных моделей, снизить использование VRAM/RAM или подключить Koharu к размещённой модели. Учтите, что текст OCR, выбранный для перевода, отправляется настроенному провайдеру.
160
-
161
- ## Установка
162
-
163
- Последнюю версию Koharu можно скачать со [страницы релизов](https://github.com/mayocream/koharu/releases/latest).
164
-
165
- Мы предоставляем готовые сборки для Windows, macOS и Linux. Для других платформ может потребоваться сборка из исходников — см. раздел [Разработка](#разработка) ниже.
166
-
167
- ## Разработка
168
-
169
- Чтобы собрать Koharu из исходников, выполните следующие шаги.
170
-
171
- ### Необходимые компоненты
172
-
173
- - [Rust](https://www.rust-lang.org/tools/install) (1.92 или новее)
174
- - [Bun](https://bun.sh/) (1.0 или новее)
175
-
176
- ### Установка зависимостей
177
-
178
- ```bash
179
- bun install
180
- ```
181
-
182
- ### Сборка
183
-
184
- ```bash
185
- bun run build
186
- ```
187
-
188
- Собранные бинарные файлы будут в каталоге `target/release`.
189
-
190
- ## Спонсорство
191
-
192
- Если Koharu оказался полезен, рассмотрите возможность спонсировать проект для поддержки его развития!
193
-
194
- - [GitHub Sponsors](https://github.com/sponsors/mayocream)
195
- - [Patreon](https://www.patreon.com/mayocream)
196
-
197
- ## Участники
198
-
199
- <a href="https://github.com/mayocream/koharu/graphs/contributors">
200
- <img src="https://contrib.rocks/image?repo=mayocream/koharu" />
201
- </a>
202
-
203
- ## Лицензия
204
-
205
- Koharu лицензирован под [GNU General Public License v3.0](../LICENSE).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
docs/README.zh-CN.md DELETED
@@ -1,205 +0,0 @@
1
- # Koharu
2
-
3
- 基于机器学习(ML)的漫画翻译工具,使用 **Rust** 编写。
4
-
5
- Koharu 引入了一种新的漫画翻译工作流,利用机器学习能力自动化翻译流程。它将目标检测、OCR、图像修复(inpainting)和 LLM 结合起来,提供流畅的一体化翻译体验。
6
-
7
- 在底层实现中,Koharu 使用 [candle](https://github.com/huggingface/candle) 进行高性能推理,使用 [Tauri](https://github.com/tauri-apps/tauri) 构建 GUI。所有组件均使用 Rust 编写,兼顾安全性与性能。
8
-
9
- > [!NOTE]
10
- > Koharu 默认会在你的本地设备上运行视觉模型和本地 LLM。如果你选择远程 LLM 提供商,只有待翻译的文本会发送到你配置的提供商。Koharu 本身不会收集任何用户数据。
11
-
12
- ---
13
-
14
- ![screenshot](../assets/koharu-screenshot-zh-CN.png)
15
-
16
- > [!NOTE]
17
- > 如需帮助与支持,请加入我们的 [Discord 服务器](https://discord.gg/mHvHkxGnUY)。
18
-
19
- ## 功能特性
20
-
21
- - 自动检测并分割对话气泡
22
- - 使用 OCR 识别漫画文字
23
- - 通过图像修复去除原图文字
24
- - 基于 LLM 的翻译
25
- - 面向 CJK 语言的竖排文本布局
26
- - 支持导出带可编辑文字图层的 PSD
27
- - 面向 AI Agent 的 MCP 服务器
28
-
29
- ## 使用方法
30
-
31
- ### 快捷键
32
-
33
- - <kbd>Ctrl</kbd> + 鼠标滚轮:缩放
34
- - <kbd>Ctrl</kbd> + 拖动:平移画布
35
- - <kbd>Del</kbd>:删除选中的文本块
36
-
37
- ### 导出
38
-
39
- Koharu 既可以将当前页面导出为渲染后的图片,也可以导出为带图层的 Photoshop PSD。PSD 导出会保留辅助图层,并将翻译后的文字写成可编辑的文字图层,方便在 Photoshop 中继续调整。
40
-
41
- ### MCP 服务器
42
-
43
- Koharu 内置 MCP 服务器,可用于与 AI Agent 集成。默认情况下,MCP 服务器会监听一个随机端口;你也可以通过 `--port` 参数指定端口。
44
-
45
- ```bash
46
- # macOS / Linux
47
- koharu --port 9999
48
- # Windows
49
- koharu.exe --port 9999
50
- ```
51
-
52
- 然后在你的 AI Agent 的 MCP Server URL 字段中填写 `http://localhost:9999/mcp`。
53
-
54
- ### 无界面模式(Headless Mode)
55
-
56
- Koharu 支持通过命令行以无界面模式运行。
57
-
58
- ```bash
59
- # macOS / Linux
60
- koharu --port 4000 --headless
61
- # Windows
62
- koharu.exe --port 4000 --headless
63
- ```
64
-
65
- 现在你可以通过 `http://localhost:4000` 访问 Koharu Web UI。
66
-
67
- ### 文件关联
68
-
69
- 在 Windows 上,Koharu 会自动关联 `.khr` 文件,因此可以直接双击打开。`.khr` 文件也可以作为图片打开,以查看其中图像的缩略图。
70
-
71
- ## GPU 加速
72
-
73
- Koharu 支持 CUDA 和 Metal GPU 加速,可在受支持硬件上显著提升性能。
74
-
75
- ### CUDA
76
-
77
- Koharu 提供 CUDA 支持,可利用 NVIDIA GPU 实现更快处理。
78
-
79
- Koharu 内置 CUDA toolkit 13.1 和 cuDNN 9.19,相关动态库会在首次运行时自动解压到应用数据目录。
80
-
81
- > [!NOTE]
82
- > 请确保系统已安装最新 NVIDIA 驱动。你可以通过 [NVIDIA App](https://www.nvidia.com/en-us/software/nvidia-app/) 下载最新版驱动。
83
-
84
- #### 支持的 NVIDIA GPU
85
-
86
- Koharu 支持计算能力(Compute Capability)7.5 及以上的 NVIDIA GPU。
87
-
88
- 请通过 [CUDA GPU Compute Capability](https://developer.nvidia.com/cuda-gpus) 和 [cuDNN Support Matrix](https://docs.nvidia.com/deeplearning/cudnn/backend/latest/reference/support-matrix.html) 确认你的 GPU 是否受支持。
89
-
90
- ### Metal
91
-
92
- Koharu 支持在搭载 Apple Silicon(M1、M2 等)的 macOS 上使用 Metal 进行 GPU 加速,可在多种 Apple 设备上高效运行。
93
-
94
- ### CPU 回退
95
-
96
- 你也可以强制 Koharu 使用 CPU 进行推理:
97
-
98
- ```bash
99
- # macOS / Linux
100
- koharu --cpu
101
- # Windows
102
- koharu.exe --cpu
103
- ```
104
-
105
- ## ML 模型
106
-
107
- Koharu 结合计算机视觉与自然语言处理模型来完成各项任务。
108
-
109
- ### 计算机视觉模型
110
-
111
- Koharu 在不同任务中使用多个预训练模型:
112
-
113
- - [PP-DocLayoutV3](https://huggingface.co/PaddlePaddle/PP-DocLayoutV3_safetensors) 用于文本检测和布局分析
114
- - [comic-text-detector](https://huggingface.co/mayocream/comic-text-detector) 用于生成文本遮罩
115
- - [PaddleOCR-VL-1.5](https://huggingface.co/PaddlePaddle/PaddleOCR-VL-1.5) 用于 OCR 文本识别
116
- - [lama-manga](https://huggingface.co/mayocream/lama-manga) 用于图像修复
117
- - [YuzuMarker.FontDetection](https://huggingface.co/fffonion/yuzumarker-font-detection) 用于字体和颜色检测
118
-
119
- 这些模型会在你首次运行 Koharu 时自动下载。
120
-
121
- 为了提升性能并增强 Rust 生态兼容性,我们将原始模型转换为 safetensors 格式。转换后的模型托管在 [Hugging Face](https://huggingface.co/mayocream)。
122
-
123
- ### 大语言模型(LLM)
124
-
125
- Koharu 同时支持本地和远程 LLM 后端,并会在可能时根据系统语言环境预选模型。
126
-
127
- #### 本地 LLM
128
-
129
- Koharu 通过 [candle](https://github.com/huggingface/candle) 支持 GGUF 格式的量化 LLM。这些模型在本机运行,并会在你于设置中选中它们时按需自动下载。支持模型与推荐使用场景如下:
130
-
131
- 翻译为英文:
132
-
133
- - [vntl-llama3-8b-v2](https://huggingface.co/lmg-anon/vntl-llama3-8b-v2-gguf):约 8.5 GB(Q8_0)权重,建议 >=10 GB VRAM,或在 CPU 推理时配备充足系统内存。更适合对准确度要求高的场景。
134
- - [lfm2-350m-enjp-mt](https://huggingface.co/LiquidAI/LFM2-350M-ENJP-MT-GGUF):超轻量(约 350M,Q8_0);在 CPU 和低显存 GPU 上也能流畅运行,适合快速预览或低配设备,但质量会有所下降。
135
-
136
- 翻译为中文:
137
-
138
- - [sakura-galtransl-7b-v3.7](https://huggingface.co/SakuraLLM/Sakura-GalTransl-7B-v3.7):约 6.3 GB,可在 8 GB VRAM 上运行,质量与速度平衡良好。
139
- - [sakura-1.5b-qwen2.5-v1.0](https://huggingface.co/shing3232/Sakura-1.5B-Qwen2.5-v1.0-GGUF-IMX):轻量(约 1.5B,Q5KS);适合中端 GPU(4-6 GB VRAM)或纯 CPU 环境(需中等内存),速度快于 7B/8B,同时保留 Qwen 系 tokenizer 行为。
140
-
141
- 翻译为其他语言:
142
-
143
- - [hunyuan-7b-mt-v1.0](https://huggingface.co/Mungert/Hunyuan-MT-7B-GGUF):约 6.3 GB,可在 8 GB VRAM 上运行,具备较好的多语言翻译能力。
144
-
145
- 当你在设置中选择模型时,LLM 会按需自动下载。如果内存受限,建议优先选择满足质量要求的最小模型;若 VRAM/RAM 充足,优先选择 7B/8B 模型以获得更佳翻译效果。
146
-
147
- #### 远程 LLM
148
-
149
- Koharu 也可以通过远程或自托管 API 提供商进行翻译,而无需下载本地模型。支持的远程提供商如下:
150
-
151
- - OpenAI
152
- - Gemini
153
- - Claude
154
- - DeepSeek
155
- - OpenAI Compatible,包括 LM Studio、OpenRouter,或任何提供 OpenAI 风格 `/v1/models` 和 `/v1/chat/completions` API 的服务
156
-
157
- 远程提供商在 **Settings > API Keys** 中配置。对于 OpenAI Compatible,你还需要设置自定义 Base URL。像 LM Studio 这样的本地服务通常可以不填 API Key,而 OpenRouter 这类托管服务通常需要 API Key。
158
-
159
- 如果你希望避免下载本地模型、减少本地 VRAM/RAM 占用,或者希望接入托管模型,可以选择远程提供商。需要注意的是,被选中用于翻译的 OCR 文本会发送到所配置的提供商。
160
-
161
- ## 安装
162
-
163
- 你可以在 [releases 页面](https://github.com/mayocream/koharu/releases/latest) 下载 Koharu 的最新版本。
164
-
165
- 我们提供 Windows、macOS 和 Linux 的预构建二进制包。其他平台可能需要从源码构建,详见下方 [开发](#开发) 部分。
166
-
167
- ## 开发
168
-
169
- 按以下步骤从源码构建 Koharu。
170
-
171
- ### 前置要求
172
-
173
- - [Rust](https://www.rust-lang.org/tools/install)(1.92 或更高)
174
- - [Bun](https://bun.sh/)(1.0 或更高)
175
-
176
- ### 安装依赖
177
-
178
- ```bash
179
- bun install
180
- ```
181
-
182
- ### 构建
183
-
184
- ```bash
185
- bun run build
186
- ```
187
-
188
- 构建产物位于 `target/release` 目录。
189
-
190
- ## 赞助
191
-
192
- 如果 Koharu 对你有帮助,欢迎赞助项目以支持持续开发。
193
-
194
- - [GitHub Sponsors](https://github.com/sponsors/mayocream)
195
- - [Patreon](https://www.patreon.com/mayocream)
196
-
197
- ## 贡献者
198
-
199
- <a href="https://github.com/mayocream/koharu/graphs/contributors">
200
- <img src="https://contrib.rocks/image?repo=mayocream/koharu" />
201
- </a>
202
-
203
- ## 许可证
204
-
205
- Koharu 使用 [GNU General Public License v3.0](../LICENSE) 授权。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
docs/assets/Koharu_Halo.png ADDED

Git LFS Details

  • SHA256: 8e07c095ee8e80b8c9c25d39693c3afb2ea91b5e98f96e750f48074467579834
  • Pointer size: 131 Bytes
  • Size of remote file: 128 kB
docs/assets/Koharu_Icon.png ADDED

Git LFS Details

  • SHA256: 35868875403430b9ad12821d9d452be342c079b21019c7e9ecb17454e7bc92eb
  • Pointer size: 130 Bytes
  • Size of remote file: 79.7 kB
docs/assets/koharu-screenshot-en.png ADDED

Git LFS Details

  • SHA256: c75068d9336d0974f821748b0a7254fecde205e6f8afb830263f3fab4a3dcbd8
  • Pointer size: 132 Bytes
  • Size of remote file: 2.22 MB
docs/assets/koharu-screenshot-ja.png ADDED

Git LFS Details

  • SHA256: 601326f20fe90797c7adaea729d0285c018832523354d5be37fc19b3ff385575
  • Pointer size: 132 Bytes
  • Size of remote file: 2.22 MB
docs/assets/koharu-screenshot-zh-CN.png ADDED

Git LFS Details

  • SHA256: 71eee83c8b223e2e1010d73f9a80178bfe11e95b92b28699675dce5c2ba7664d
  • Pointer size: 132 Bytes
  • Size of remote file: 2.24 MB
docs/explanation/acceleration-and-runtime.md ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Acceleration and Runtime
3
+ ---
4
+
5
+ # Acceleration and Runtime
6
+
7
+ Koharu supports multiple runtime paths so it can run well on a wide range of hardware.
8
+
9
+ ## CUDA on NVIDIA GPUs
10
+
11
+ CUDA is the main GPU acceleration path on systems with supported NVIDIA hardware.
12
+
13
+ - Koharu supports NVIDIA GPUs with compute capability 7.5 or higher
14
+ - Koharu bundles CUDA toolkit 13.1
15
+ - Koharu bundles cuDNN 9.19
16
+
17
+ On first run, the required dynamic libraries are extracted to the application data directory.
18
+
19
+ !!! note
20
+
21
+ CUDA acceleration depends on a recent NVIDIA driver. If the driver does not support CUDA 13.1, Koharu falls back to CPU.
22
+
23
+ ## Metal on Apple Silicon
24
+
25
+ On macOS, Koharu supports Metal acceleration for Apple Silicon devices such as M1 and M2 systems.
26
+
27
+ ## CPU fallback
28
+
29
+ Koharu can always run on CPU when GPU acceleration is unavailable or when you force CPU mode explicitly.
30
+
31
+ ```bash
32
+ # macOS / Linux
33
+ koharu --cpu
34
+
35
+ # Windows
36
+ koharu.exe --cpu
37
+ ```
38
+
39
+ ## Why fallback matters
40
+
41
+ Fallback behavior makes Koharu usable on more machines, but it changes the experience:
42
+
43
+ - GPU inference is much faster when supported
44
+ - CPU mode is more compatible but can be substantially slower
45
+ - Smaller local LLMs are often the best choice on CPU-only systems
46
+
47
+ For exact model choices, see [Models and Providers](models-and-providers.md).
docs/explanation/how-koharu-works.md ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: How Koharu Works
3
+ ---
4
+
5
+ # How Koharu Works
6
+
7
+ Koharu is built around a translation pipeline for manga pages.
8
+
9
+ ## The core workflow
10
+
11
+ For a typical page, Koharu combines several stages:
12
+
13
+ 1. Text detection and layout analysis
14
+ 2. Text region segmentation
15
+ 3. OCR text recognition
16
+ 4. Inpainting to remove original text
17
+ 5. LLM-based translation
18
+ 6. Text rendering and export
19
+
20
+ This lets one application handle both the language work and much of the visual cleanup.
21
+
22
+ ## Why the stack matters
23
+
24
+ Koharu uses:
25
+
26
+ - [candle](https://github.com/huggingface/candle) for high-performance inference
27
+ - [Tauri](https://github.com/tauri-apps/tauri) for the desktop app shell
28
+ - Rust across the stack for performance and memory safety
29
+
30
+ ## Local-first design
31
+
32
+ By default, Koharu runs:
33
+
34
+ - vision models locally
35
+ - local LLMs locally
36
+
37
+ If you configure a remote LLM provider, Koharu sends only the text selected for translation to that provider.
docs/explanation/index.md ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Explanation
3
+ ---
4
+
5
+ # Explanation
6
+
7
+ Explanation pages describe how Koharu is put together and why it behaves the way it does.
8
+
9
+ ## Topics
10
+
11
+ - [How Koharu Works](how-koharu-works.md)
12
+ - [Acceleration and Runtime](acceleration-and-runtime.md)
13
+ - [Models and Providers](models-and-providers.md)
docs/explanation/models-and-providers.md ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Models and Providers
3
+ ---
4
+
5
+ # Models and Providers
6
+
7
+ Koharu uses both vision models and language models. The vision stack prepares the page; the language stack handles translation.
8
+
9
+ ## Vision models
10
+
11
+ Koharu automatically downloads the required vision models when you use them for the first time.
12
+
13
+ The default stack includes:
14
+
15
+ - [PP-DocLayoutV3](https://huggingface.co/PaddlePaddle/PP-DocLayoutV3_safetensors) for text detection and layout analysis
16
+ - [comic-text-detector](https://huggingface.co/mayocream/comic-text-detector) for text segmentation
17
+ - [PaddleOCR-VL-1.5](https://huggingface.co/PaddlePaddle/PaddleOCR-VL-1.5) for OCR text recognition
18
+ - [lama-manga](https://huggingface.co/mayocream/lama-manga) for inpainting
19
+ - [YuzuMarker.FontDetection](https://huggingface.co/fffonion/yuzumarker-font-detection) for font and color detection
20
+
21
+ Converted model weights are hosted on [Hugging Face](https://huggingface.co/mayocream) in safetensors format for Rust compatibility and performance.
22
+
23
+ ## Local LLMs
24
+
25
+ Koharu supports local GGUF models through [candle](https://github.com/huggingface/candle). These models run on your machine and are downloaded on demand when you select them in Settings.
26
+
27
+ ### Suggested local models for English output
28
+
29
+ - [vntl-llama3-8b-v2](https://huggingface.co/lmg-anon/vntl-llama3-8b-v2-gguf): around 8.5 GB in Q8_0 form, best when translation quality matters most
30
+ - [lfm2-350m-enjp-mt](https://huggingface.co/LiquidAI/LFM2-350M-ENJP-MT-GGUF): very small and useful for low-memory systems or quick previews
31
+
32
+ ### Suggested local models for Chinese output
33
+
34
+ - [sakura-galtransl-7b-v3.7](https://huggingface.co/SakuraLLM/Sakura-GalTransl-7B-v3.7): a balanced choice for quality and speed on 8 GB class GPUs
35
+ - [sakura-1.5b-qwen2.5-v1.0](https://huggingface.co/shing3232/Sakura-1.5B-Qwen2.5-v1.0-GGUF-IMX): a lighter option for mid-range or CPU-heavy setups
36
+
37
+ ### Suggested local model for broader language coverage
38
+
39
+ - [hunyuan-7b-mt-v1.0](https://huggingface.co/Mungert/Hunyuan-MT-7B-GGUF): a multi-language option with moderate hardware requirements
40
+
41
+ ## Remote providers
42
+
43
+ Koharu can translate through remote or self-hosted APIs instead of downloading a local model.
44
+
45
+ Supported providers include:
46
+
47
+ - OpenAI
48
+ - Gemini
49
+ - Claude
50
+ - DeepSeek
51
+ - OpenAI-compatible APIs such as LM Studio, OpenRouter, or any endpoint that exposes `/v1/models` and `/v1/chat/completions`
52
+
53
+ Remote providers are configured in **Settings > API Keys**.
54
+
55
+ ## Choosing between local and remote
56
+
57
+ Use local models when you want:
58
+
59
+ - the most private setup
60
+ - offline operation after downloads complete
61
+ - tighter control over hardware usage
62
+
63
+ Use remote providers when you want:
64
+
65
+ - to avoid large local model downloads
66
+ - to reduce local VRAM or RAM usage
67
+ - to connect to a hosted or self-managed model service
68
+
69
+ !!! note
70
+
71
+ When you use a remote provider, Koharu sends OCR text selected for translation to the provider you configured.
docs/how-to/build-from-source.md ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Build From Source
3
+ ---
4
+
5
+ # Build From Source
6
+
7
+ If you do not want to use a release build, you can compile Koharu locally.
8
+
9
+ ## Prerequisites
10
+
11
+ - [Rust](https://www.rust-lang.org/tools/install) 1.92 or later
12
+ - [Bun](https://bun.sh/) 1.0 or later
13
+
14
+ ## Install dependencies
15
+
16
+ ```bash
17
+ bun install
18
+ ```
19
+
20
+ ## Build the project
21
+
22
+ ```bash
23
+ bun run build
24
+ ```
25
+
26
+ The built binaries will be placed in `target/release`.
docs/how-to/export-and-manage-projects.md ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Export Pages and Manage Projects
3
+ ---
4
+
5
+ # Export Pages and Manage Projects
6
+
7
+ ## Export rendered output
8
+
9
+ Koharu can export the current page as a rendered image.
10
+
11
+ Use this when you want a final flattened result for reading, sharing, or publishing.
12
+
13
+ ## Export layered PSD files
14
+
15
+ Koharu can also export a layered Photoshop PSD.
16
+
17
+ PSD export preserves helper layers and writes translated text as editable text layers, which makes final cleanup in Photoshop much easier.
18
+
19
+ ## Work with `.khr` project files
20
+
21
+ Koharu stores project data in `.khr` files.
22
+
23
+ On Windows, Koharu automatically associates `.khr` files so they can be opened by double-clicking. These files can also be viewed in ways that expose the thumbnails of their contained images.
24
+
25
+ ## When to use each format
26
+
27
+ - Rendered image: best for final delivery
28
+ - PSD: best for manual cleanup and touch-up work
29
+ - `.khr`: best for saving in-progress Koharu projects
docs/how-to/index.md ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: How-To Guides
3
+ ---
4
+
5
+ # How-To Guides
6
+
7
+ How-to guides focus on specific jobs you may want to complete with Koharu.
8
+
9
+ ## Common tasks
10
+
11
+ - [Install Koharu](install-koharu.md)
12
+ - [Run GUI, Headless, and MCP Modes](run-gui-headless-and-mcp.md)
13
+ - [Export Pages and Manage Projects](export-and-manage-projects.md)
14
+ - [Build From Source](build-from-source.md)
docs/how-to/install-koharu.md ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Install Koharu
3
+ ---
4
+
5
+ # Install Koharu
6
+
7
+ ## Download a release build
8
+
9
+ Download the latest release from the [Koharu releases page](https://github.com/mayocream/koharu/releases/latest).
10
+
11
+ Koharu provides prebuilt binaries for:
12
+
13
+ - Windows
14
+ - macOS
15
+ - Linux
16
+
17
+ If your platform is not covered by a release build, use [Build From Source](build-from-source.md).
18
+
19
+ ## First launch expectations
20
+
21
+ On first run, Koharu may:
22
+
23
+ - extract bundled runtime libraries
24
+ - download required vision models
25
+ - download local LLMs later when you select them in Settings
26
+
27
+ This is normal and can take time depending on your connection and hardware.
28
+
29
+ ## GPU acceleration notes
30
+
31
+ Koharu supports:
32
+
33
+ - CUDA on supported NVIDIA GPUs
34
+ - Metal on Apple Silicon Macs
35
+ - CPU fallback on all platforms
36
+
37
+ For CUDA, Koharu bundles CUDA toolkit 13.1 and cuDNN 9.19, then extracts the required dynamic libraries into the app data directory on first run.
38
+
39
+ !!! note
40
+
41
+ Keep your NVIDIA driver up to date. Koharu checks for CUDA 13.1 support and falls back to CPU if the driver is too old.
42
+
43
+ ## Need help?
44
+
45
+ For support, join the [Discord server](https://discord.gg/mHvHkxGnUY).
docs/how-to/run-gui-headless-and-mcp.md ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Run GUI, Headless, and MCP Modes
3
+ ---
4
+
5
+ # Run GUI, Headless, and MCP Modes
6
+
7
+ Koharu can run as a normal desktop app, a headless local server with a Web UI, or an MCP server for AI agents.
8
+
9
+ ## Run the desktop app
10
+
11
+ Launch Koharu normally from your installed application.
12
+
13
+ This is the default mode and is the best choice for most users.
14
+
15
+ ## Run headless mode
16
+
17
+ Headless mode starts the local HTTP server without opening the desktop GUI.
18
+
19
+ ```bash
20
+ # macOS / Linux
21
+ koharu --port 4000 --headless
22
+
23
+ # Windows
24
+ koharu.exe --port 4000 --headless
25
+ ```
26
+
27
+ After startup, open the Web UI at `http://localhost:4000`.
28
+
29
+ ## Run with a fixed port
30
+
31
+ By default, Koharu uses a random local port. Use `--port` when you need a stable address.
32
+
33
+ ```bash
34
+ # macOS / Linux
35
+ koharu --port 9999
36
+
37
+ # Windows
38
+ koharu.exe --port 9999
39
+ ```
40
+
41
+ ## Connect to the MCP server
42
+
43
+ Koharu includes a built-in MCP server. When you run Koharu on a fixed port, point your AI agent at:
44
+
45
+ `http://localhost:9999/mcp`
46
+
47
+ Replace `9999` with the port you chose.
48
+
49
+ ## Force CPU mode
50
+
51
+ Use `--cpu` when you want to disable GPU inference explicitly.
52
+
53
+ ```bash
54
+ # macOS / Linux
55
+ koharu --cpu
56
+
57
+ # Windows
58
+ koharu.exe --cpu
59
+ ```
60
+
61
+ ## Download runtime dependencies only
62
+
63
+ Use `--download` if you want Koharu to fetch runtime packages and exit without starting the app.
64
+
65
+ ```bash
66
+ # macOS / Linux
67
+ koharu --download
68
+
69
+ # Windows
70
+ koharu.exe --download
71
+ ```
docs/index.md ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Overview
3
+ ---
4
+
5
+ # Koharu
6
+
7
+ ML-powered manga translator, written in **Rust**.
8
+
9
+ Koharu introduces a practical workflow for manga translation. It combines object detection, OCR, inpainting, and LLM-assisted translation so you can move from raw page to cleaned export in one tool.
10
+
11
+ Under the hood, Koharu uses [candle](https://github.com/huggingface/candle) for high-performance inference and [Tauri](https://github.com/tauri-apps/tauri) for the desktop app. All major components are written in Rust.
12
+
13
+ !!! note
14
+
15
+ Koharu runs its vision models and local LLMs **locally** on your machine by default. If you choose a remote LLM provider, Koharu sends translation text only to the provider you configured. Koharu itself does not collect user data.
16
+
17
+ ---
18
+
19
+ ![screenshot](assets/koharu-screenshot-en.png)
20
+
21
+ !!! note
22
+
23
+ For help and support, please join our [Discord server](https://discord.gg/mHvHkxGnUY).
24
+
25
+ ## Start here
26
+
27
+ - New to Koharu: [Translate Your First Page](tutorials/translate-your-first-page.md)
28
+ - Installing a release build: [Install Koharu](how-to/install-koharu.md)
29
+ - Running the desktop app, Web UI, or MCP server: [Run GUI, Headless, and MCP Modes](how-to/run-gui-headless-and-mcp.md)
30
+ - Exporting images, PSDs, and project files: [Export Pages and Manage Projects](how-to/export-and-manage-projects.md)
31
+ - Building from source: [Build From Source](how-to/build-from-source.md)
32
+
33
+ ## What Koharu can do
34
+
35
+ - Detect and segment manga text regions automatically
36
+ - Run OCR on manga pages
37
+ - Inpaint original text from the artwork
38
+ - Translate with local or remote LLMs
39
+ - Render vertical text for CJK languages
40
+ - Export layered PSD files with editable text
41
+ - Expose an MCP server for AI-agent workflows
42
+
43
+ ## Learn the system
44
+
45
+ - Workflow overview: [How Koharu Works](explanation/how-koharu-works.md)
46
+ - GPU and fallback behavior: [Acceleration and Runtime](explanation/acceleration-and-runtime.md)
47
+ - Vision models and LLM backends: [Models and Providers](explanation/models-and-providers.md)
48
+
49
+ ## Look up details
50
+
51
+ - Command-line options: [CLI Reference](reference/cli.md)
52
+ - Default controls: [Keyboard Shortcuts](reference/keyboard-shortcuts.md)
docs/reference/cli.md ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: CLI Reference
3
+ ---
4
+
5
+ # CLI Reference
6
+
7
+ This page covers the command-line options exposed by Koharu's desktop binary.
8
+
9
+ ## Common usage
10
+
11
+ ```bash
12
+ # macOS / Linux
13
+ koharu [OPTIONS]
14
+
15
+ # Windows
16
+ koharu.exe [OPTIONS]
17
+ ```
18
+
19
+ ## Options
20
+
21
+ | Option | Meaning |
22
+ | --- | --- |
23
+ | `-d`, `--download` | Download runtime libraries and exit |
24
+ | `--cpu` | Force CPU mode even when a GPU is available |
25
+ | `-p`, `--port <PORT>` | Bind the local HTTP server to a specific port |
26
+ | `--headless` | Run without starting the desktop GUI |
27
+ | `--debug` | Enable debug mode with console output |
28
+
29
+ ## Common patterns
30
+
31
+ Start headless Web UI on a stable port:
32
+
33
+ ```bash
34
+ koharu --port 4000 --headless
35
+ ```
36
+
37
+ Start with CPU-only inference:
38
+
39
+ ```bash
40
+ koharu --cpu
41
+ ```
42
+
43
+ Download runtime packages ahead of time:
44
+
45
+ ```bash
46
+ koharu --download
47
+ ```
docs/reference/index.md ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Reference
3
+ ---
4
+
5
+ # Reference
6
+
7
+ Reference pages collect factual details you may want to look up quickly.
8
+
9
+ ## Available references
10
+
11
+ - [CLI Reference](cli.md)
12
+ - [Keyboard Shortcuts](keyboard-shortcuts.md)
docs/reference/keyboard-shortcuts.md ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Keyboard Shortcuts
3
+ ---
4
+
5
+ # Keyboard Shortcuts
6
+
7
+ These are the default controls documented for the editor.
8
+
9
+ | Shortcut | Action |
10
+ | --- | --- |
11
+ | `Ctrl` + mouse wheel | Zoom in or out |
12
+ | `Ctrl` + drag | Pan the canvas |
13
+ | `Del` | Delete the selected text block |
docs/tutorials/index.md ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Tutorials
3
+ ---
4
+
5
+ # Tutorials
6
+
7
+ Tutorials walk through complete tasks from start to finish.
8
+
9
+ ## Available tutorials
10
+
11
+ - [Translate Your First Page](translate-your-first-page.md)
docs/tutorials/translate-your-first-page.md ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Translate Your First Page
3
+ ---
4
+
5
+ # Translate Your First Page
6
+
7
+ This tutorial covers the normal Koharu workflow for a single manga page: import, detect, recognize, translate, review, and export.
8
+
9
+ ## Before you begin
10
+
11
+ - Install Koharu from the latest GitHub release
12
+ - Start with a clear manga page image
13
+ - Make sure you have enough local VRAM/RAM for your preferred model, or plan to use a remote provider
14
+
15
+ If you have not installed Koharu yet, start with [Install Koharu](../how-to/install-koharu.md).
16
+
17
+ ## 1. Launch Koharu
18
+
19
+ Open the desktop application normally.
20
+
21
+ On the first run, Koharu may download required runtime packages and ML models. This is expected.
22
+
23
+ ## 2. Import a page
24
+
25
+ Load your manga page into the app.
26
+
27
+ Koharu keeps your work inside a project, and on Windows it can associate `.khr` project files so you can reopen them by double-clicking.
28
+
29
+ ## 3. Detect text and run OCR
30
+
31
+ Use Koharu's built-in vision pipeline to:
32
+
33
+ - detect speech bubbles and text regions
34
+ - segment text areas
35
+ - recognize the original text with OCR
36
+
37
+ At this point, review the detected blocks and clean up anything obvious before translation.
38
+
39
+ ## 4. Choose a translation backend
40
+
41
+ Pick either:
42
+
43
+ - a local GGUF model if you want everything to stay on your machine
44
+ - a remote provider if you want to avoid local model downloads or heavy local inference
45
+
46
+ Koharu can use OpenAI, Gemini, Claude, DeepSeek, and OpenAI-compatible endpoints such as LM Studio or OpenRouter.
47
+
48
+ ## 5. Translate and review
49
+
50
+ Run translation on the page, then inspect the result carefully.
51
+
52
+ Koharu helps with text layout and vertical CJK rendering, but you should still review:
53
+
54
+ - names and terminology
55
+ - line breaks
56
+ - font choices
57
+ - bubble fit
58
+
59
+ ## 6. Export the result
60
+
61
+ When the page looks right, export it as either:
62
+
63
+ - a rendered image
64
+ - a layered Photoshop PSD with editable text layers
65
+
66
+ PSD export is useful when you want to do final cleanup in Photoshop without rebuilding the page structure by hand.
67
+
68
+ ## Next steps
69
+
70
+ - Learn export options: [Export Pages and Manage Projects](../how-to/export-and-manage-projects.md)
71
+ - Compare runtime choices: [Acceleration and Runtime](../explanation/acceleration-and-runtime.md)
72
+ - Choose a model: [Models and Providers](../explanation/models-and-providers.md)
zensical.toml ADDED
@@ -0,0 +1,111 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [project]
2
+ site_name = "koharu"
3
+ site_description = "ML-powered manga translator, written in Rust."
4
+ site_author = "Mayo"
5
+ site_url = "https://koharu.rs/"
6
+ repo_url = "https://github.com/mayocream/koharu"
7
+ repo_name = "mayocream/koharu"
8
+ edit_uri = "edit/main/docs/"
9
+ docs_dir = "docs"
10
+ nav = [
11
+ {"Overview" = "index.md"},
12
+ {"Tutorials" = [
13
+ "tutorials/index.md",
14
+ "tutorials/translate-your-first-page.md",
15
+ ]},
16
+ {"How-To Guides" = [
17
+ "how-to/index.md",
18
+ "how-to/install-koharu.md",
19
+ "how-to/run-gui-headless-and-mcp.md",
20
+ "how-to/export-and-manage-projects.md",
21
+ "how-to/build-from-source.md",
22
+ ]},
23
+ {"Explanation" = [
24
+ "explanation/index.md",
25
+ "explanation/how-koharu-works.md",
26
+ "explanation/acceleration-and-runtime.md",
27
+ "explanation/models-and-providers.md",
28
+ ]},
29
+ {"Reference" = [
30
+ "reference/index.md",
31
+ "reference/cli.md",
32
+ "reference/keyboard-shortcuts.md",
33
+ ]},
34
+ ]
35
+
36
+ [project.extra]
37
+ generator = false
38
+
39
+ [[project.extra.social]]
40
+ icon = "fontawesome/brands/x-twitter"
41
+ link = "https://x.com/mayo_irl"
42
+
43
+ [[project.extra.social]]
44
+ icon = "fontawesome/brands/discord"
45
+ link = "https://discord.gg/mHvHkxGnUY"
46
+
47
+ [project.theme]
48
+ language = "en"
49
+ logo = "assets/Koharu_Halo.png"
50
+ favicon = "assets/Koharu_Halo.png"
51
+ font.text = "Nunito"
52
+ font.code = "Fira Code"
53
+ features = [
54
+ "navigation.sections",
55
+ "navigation.indexes",
56
+ "navigation.instant",
57
+ "navigation.tracking",
58
+ "navigation.tabs",
59
+ "navigation.tabs.sticky",
60
+ "navigation.expand",
61
+ "navigation.footer",
62
+ "toc.follow",
63
+ "content.code.copy",
64
+ "content.action.edit",
65
+ "content.action.view",
66
+ "content.tabs.link",
67
+ ]
68
+
69
+ [project.theme.icon]
70
+ repo = "fontawesome/brands/github"
71
+
72
+ [project.theme.icon.admonition]
73
+ question = "fontawesome/solid/paper-plane"
74
+ user = "lucide/user-round"
75
+
76
+ [[project.theme.palette]]
77
+ scheme = "default"
78
+ primary = "pink"
79
+ accent = "teal"
80
+ toggle.icon = "lucide/sun"
81
+ toggle.name = "Switch to dark mode"
82
+
83
+ [[project.theme.palette]]
84
+ scheme = "slate"
85
+ primary = "pink"
86
+ accent = "teal"
87
+ toggle.icon = "lucide/moon"
88
+ toggle.name = "Switch to light mode"
89
+
90
+ [project.markdown_extensions.admonition]
91
+ [project.markdown_extensions.attr_list]
92
+ [project.markdown_extensions.md_in_html]
93
+ [project.markdown_extensions.tables]
94
+
95
+ [project.markdown_extensions.pymdownx.emoji]
96
+ emoji_index = "zensical.extensions.emoji.twemoji"
97
+ emoji_generator = "zensical.extensions.emoji.to_svg"
98
+
99
+ [project.markdown_extensions.pymdownx.tabbed]
100
+ alternate_style = true
101
+
102
+ [project.markdown_extensions.pymdownx.tasklist]
103
+ custom_checkbox = true
104
+
105
+ [project.markdown_extensions.toc]
106
+ permalink = true
107
+
108
+ [project.markdown_extensions.pymdownx.superfences]
109
+ custom_fences = [
110
+ { name = "mermaid", class = "mermaid", format = "pymdownx.superfences.fence_code_format" },
111
+ ]