Edhita: オープンソース iOS SwiftUI テキストエディタ(開発者向け)
Edhitaとは
Edhitaは、完全オープンソースのテキストエディタで、SwiftUIを使用してiOSデバイス向けに専用に構築されています。プロジェクトはGitHubの tnantoka/edhita にあり、MITライセンスの下で配布されているため、個人・商用利用が無料です。
開発者にとって重要なポイント
- モダンなUI – SwiftUIは宣言的で再利用可能なインターフェースを提供し、iOSでネイティブに感じられます。
- クリーンなアーキテクチャ – コードベースはモデル・ビュー・コントローラという別々のモジュールに分かれており、モジュール式Swift設計を学ぶには最適です。
- AdMob & プライバシー – アプリにはすでにAdMob統合(プライバシー対応)が組み込まれているため、SwiftUIプロジェクトにサードパーティサービスを組み込む方法を確認できます。
- クロスプラットフォームのインスピレーション – Android版の DotText は、クロステクノロジー共有が可能であることを示しており、ブログ投稿の議論材料としても魅力的です。
クイックスタートガイド
- リポジトリをクローン
git clone https://github.com/tnantoka/edhita.git cd edhita - プロジェクトを開く – Xcodeで
Edhita.xcodeprojをダブルクリック、またはターミナルからopen Edhita.xcodeprojを実行。 - ビルド・実行 – iOSシミュレータ(iPhone 15 Pro、iPhone SE など)を選択し、Runを押すとエディタが起動します。
- 定数を変更 –
Constants.swift等のファイルにはAdMob IDやUIレイアウト値の設定が含まれています。パス、テーマカラー、タイトルなどを自由にカスタマイズしてください。 - App Store向けビルド – Xcodeのアーカイブ機能を使用し、App Store Connectへ提出します。
SwiftUIの @State や @Binding に不慣れな場合でも、ソースコードには豊富なコメントが付いているので、動的テキスト、ファイル操作、共有機能の扱い方を学ぶのに最適な実験台です。
コア機能のハイライト
| Feature | Description |
|---|---|
| リッチテキスト編集 | プレーンテキスト入力、改行の認識、キーボードショートカットによる基本的な書式設定をサポート。 |
| ファイルI/O | 任意のフォーマットでドキュメントを開く・保存・上書き・エクスポート。アプリは内部で FileManager を使用しています。 |
| 共有 | 共有ボタンを押すと共有シートが起動 – iPhoneとiPadの両方で動作します。 |
| AdMob | アプリが公開されるとAdMobが表示されます。プライバシーポリシーへの準拠は Constants.swift のトグルで実装されています。 |
| ローカライズ | 日本語と英語に対応したローカライズ可能な文字列ファイルを使用し、UIを言語非依存にしています。 |
プロジェクト拡張
Edhitaはオープンソースですので、次のように機能追加が簡単に行えます: 1. 機能ブランチを作成 – 変更を分離して管理。 2. 新しいSwiftモジュールを追加 – 例えばMarkdownパーサーやシンタックスハイライターなど。 3. アップデートを公開 – App Storeで配布する場合は、Appleのレビューガイドラインに準拠してください。 4. プルリクエストを送信 – Edhitaのメンテナは活発で、貢献を歓迎しています。
コミュニティとサポート
リポジトリは約1.4kスターと249フォークを持ち、活発な開発者コミュニティが存在します。以下のように参加できます: * Issuesタブで質問を投稿。 * バグ報告・機能リクエストの既存Issueを閲覧。 * コードを確認し、自身の変更をプルしてプルリクエストを送信。
評価
Edhitaは、コンパクトで整然とした完全なiOSエディタのサンプルです。SwiftUI愛好家がテキスト処理、ファイルシステム統合、広告の実装を学ぶ「スターターパック」として最適です。オープンソースであるため、コミュニティ主導で拡張でき、ユーザー数と共に成長します。
貢献したい、テンプレートとして使用したい、新しいアプリの開発のベースにしたい――どのような目的でも、EdhitaはGitHubで目立つ存在になる価値があります。