Skip to content

スミレ - 完全オフラインの日本語キーボードアプリ

License

Notifications You must be signed in to change notification settings

KazumaProject/JapaneseKeyboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9468817 · Jul 26, 2025

History

987 Commits
Jun 7, 2025
Jun 14, 2025
Jul 26, 2025
Jul 26, 2025
Jul 24, 2025
Jun 15, 2025
Jun 1, 2025
Jun 7, 2025
Jul 6, 2025
Jul 6, 2025
Jul 21, 2025
Jul 21, 2025
Jun 3, 2025
Apr 20, 2025
Oct 7, 2024
Jun 24, 2025
Sep 24, 2024
Jun 23, 2025
Jun 15, 2025
Sep 25, 2023
Sep 25, 2023
Jun 14, 2025

Repository files navigation

Sumire (スミレ) — The Privacy-First Japanese Keyboard

Sumire typing demo

Your Keys, Your Data, Your Style.

あなたの手に、プライバシーと自由を。

Google Play で手に入れよう GitHub release

Android CI License minSdk 24 targetSdk 35



日本語

📜 コンセプト

Sumireは、プライバシーを絶対に妥協しないという哲学から生まれた日本語入力キーボードです。あなたの思考や会話が、意図せず第三者に渡るべきではありません。すべての変換処理をデバイス内で完結させることで、100%のオフライン動作を実現しました。

オープンソースのmozcエンジンを基盤としながら、強力なユーザー辞書便利な定型文、そして自由なキーボード定義といった高度なパーソナライズ機能を追加し、書くことそのものを、あなただけの体験にすることを目指しています。

✨ 主な特徴

  • 🔒 完全オフライン保証 機内モードでも全機能が動作。INTERNET権限を要求しないため、入力データが外部に送信されることは一切ありません。

  • 🧠 高性能な変換エンジン Google日本語入力のコアであるmozcの大規模辞書を搭載。文脈を読んだ高精度な変換を実現します。

  • 📖 強力なユーザー辞書 登録した単語を前方一致でスムーズに予測変換。インポート/エクスポート対応で、辞書のバックアップや移行も自由自在です。

  • 📋 便利な定型文(スニペット) メールアドレスや挨拶など、よく使う文章を「読み」で全文一致呼び出し。インポート/エクスポートにも対応しています。

  • 🎨 究極のカスタマイズ ユーザー自身がキー配列を定義できるカスタムキーボード機能を搭載。あなただけのキーボードを作成できます。

  • 📱 モダンな設計 Kotlinでフルスクラッチ開発。Jetpackライブラリによる最適化で、軽快な動作と滑らかなUIを実現。タブレット端末にも対応しています。

📷 スクリーンショット

通常表示 (ライト/ダーク)
ライトテーマ ダークテーマ

QWERTYレイアウトと絵文字
QWERTY Light QWERTY Dark

タブレット表示
Tablet Light Tablet Dark

🚀 クイックスタート

  1. 上記 Google Play バッジ、またはリリースページからインストールします。
  2. Androidの 設定 → システム → 言語と入力 → 画面キーボード を開き、「Sumire」を有効にします。
  3. 文字入力欄を長押し、またはキーボード切替アイコンをタップして「Sumire」を選択します。

🛠️ 開発者向け

ビルド環境

Tool Version
Android Studio Iguana (2023.2.1) or newer
Gradle Plugin 8.4+
JDK 21

ビルド手順

# 1. リポジトリをクローン
git clone [https://github.com/KazumaProject/JapaneseKeyboard.git](https://github.com/KazumaProject/JapaneseKeyboard.git)
cd JapaneseKeyboard

# 2. USBデバッグを有効にしたデバイス/エミュレータでビルド & インストール
./gradlew installDebug

🤝 貢献するには

このプロジェクトはオープンソースです。バグ報告、機能提案、そしてプルリクエストを心から歓迎します。 貢献していただける方は、まず Issues を検索し、同様の課題が議論されていないかご確認ください。

🏗️ アーキテクチャ

キー入力から候補表示までの処理フローは以下の通りです。コアな変換ロジックは、LOUDSトライ木辞書とN-gram言語モデルに基づいています。

+----------------------+      +----------------------+
|   Input (Key Event)  | ---> |  Candidate Generation|
+----------------------+      |  (LOUDS Dictionary)  |
                               +-----------+----------+
                                           |
+----------------------+      +----------+-----------+
| Suggestion Rendering | <--- |   Ranking (N-gram)   |
+----------------------+      +----------------------+

詳細はDeepWikiの技術ドキュメントをご参照ください。

🔐 プライバシーとセキュリティ

  • ネットワーク権限ゼロ: AndroidManifest.xmlINTERNET権限は含まれていません。インストール時にも権限を要求しません。
  • 暗号化された学習データ: 予測変換のための学習履歴は、AES-256で暗号化され、安全にローカル保存されます。

📝 謝辞

本プロジェクトは、以下の素晴らしい技術や資料に支えられています。

📄 ライセンス

MIT License © 2025 Kazuma Naka — 詳細は LICENSE ファイルをご覧ください。


English

📜 Philosophy

Sumire is a Japanese keyboard built on a single, uncompromising philosophy: absolute privacy. Your thoughts and conversations should never be an asset for third parties. We achieve 100% offline functionality by ensuring every process, from keystroke to candidate conversion, happens entirely on your device.

Built on the open-source mozc engine, Sumire enhances the writing experience with advanced personalization features like a powerful user dictionary, convenient snippets, and fully customizable keyboard layouts, aiming to make typing a truly personal experience.

✨ Key Features

  • 🔒 100% Offline & Secure Works flawlessly in airplane mode. With zero network permissions, your data never leaves your device. Period.

  • 🧠 Powerful Conversion Engine Powered by the large-scale dictionary from mozc (the core of Google's Japanese IME) for highly accurate, context-aware predictions.

  • 📖 Powerful User Dictionary Get predictive suggestions for your registered words via forward-matching search. Full import/export support gives you complete control over your dictionary.

  • 📋 Convenient Snippets Instantly insert frequently used phrases, email addresses, or greetings using an exact-match trigger word. Also supports import/export.

  • 🎨 Ultimate Customization Go beyond themes. Adjust key height and sensitivity, and even create your own fully custom keyboard layouts to perfectly match your typing style.

  • 📱 Modern by Design Developed in Kotlin from the ground up and optimized with Jetpack libraries for a smooth, fast, and responsive UI. It's also optimized for tablets and foldables.

🚀 Quick Start

  1. Install from the Google Play badge above or from the Releases page.
  2. Open Android Settings → System → Languages & input → On-screen keyboard and enable "Sumire".
  3. Long-press any text field or tap the keyboard-switch icon and select "Sumire".

🛠️ For Developers

See the Japanese section for the build environment and instructions.

git clone [https://github.com/KazumaProject/JapaneseKeyboard.git](https://github.com/KazumaProject/JapaneseKeyboard.git)
cd JapaneseKeyboard
./gradlew installDebug

🤝 Contributing

This is an open-source project, and we welcome bug reports, feature requests, and pull requests. Please check the Issues page to see if your idea is already being discussed.

🔐 Privacy & Security

  • Zero Network Permission: The AndroidManifest.xml does not contain the INTERNET permission.
  • Encrypted Learning Data: Your personal dictionary and learning data are stored locally, encrypted with AES-256.

📝 Acknowledgements

This project stands on the shoulders of giants. Our thanks go to:

📄 License

MIT License © 2025 Kazuma Naka — See the LICENSE file for details.