セルフホスト型サービス
iib0011/omni-tools avatar
iib0011/omni-tools

OmniToolsをローカル処理中心のWebツール集として運用する

日常業務に使用できる強力な Web ベース ツールの自己ホスト型コレクション。広告や追跡はなく、ブラウザから直接アクセスできる高速なユーティリティのみです。

スター 10,210フォーク 714TypeScriptMIT

ひと目でわかる

これは何?
画像、PDF、テキスト、日時、数学、データをブラウザ側で処理するOmniToolsの機能範囲とDocker導入を整理する。
誰に向いている?
OmniToolsは、画像やPDFを外部へ送らずブラウザ内で処理したい個人や小規模チーム、Dockerでまとめて起動したい運用者に向く。サーバー側の変換処理や大容量ファイルの性能保証を求める用途には、READMEだけでは判断材料が足りない。
商用利用できる?
できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 29 日前です。
何の言語で書かれている?
主に TypeScript です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

omni-toolsのOmniToolsとクライアント側処理

OmniToolsは、日常のタスクのためのブラウザベースのユーティリティをまとめたセルフホスト型Webアプリケーションです。READMEは、コーディング、画像・動画操作、PDF作業、数値計算のためのツールとして説明しています。最も特徴的な技術的主張は、すべてのファイル処理がクライアント側で行われることです。READMEは「何もデバイスから出ない」と述べています。リポジトリの説明には、サイトに広告やトラッキングがないと付け加えられていますが、README自体はこれらの主張について詳しく説明していません。omnitools.appにデモへのリンクがありますが、READMEはデモがどのような機能を含むかをスクリーンショット以外には説明していません。

omni-toolsのコレクションがカバーするツールカテゴリ

READMEはユーティリティを6つのカテゴリに分類しています。画像・動画・音声ツールには、画像リサイザー、コンバーター、エディター、動画トリマー、動画リバーサーが含まれます。PDFツールには、スプリッター、マージャー、エディターが含まれます。テキスト・リストツールには、大文字小文字変換、リストシャッフラー、テキストフォーマッターが含まれます。日付・時刻ツールには、日付計算機とタイムゾーン変換器が含まれます。数学ツールには、素数生成と電圧・電流・抵抗の計算が含まれます。データツールはJSON、CSV、XMLをカバーします。各カテゴリは「その他」で終わっており、正確な一覧は固定されていません。READMEは「コレクションを拡張・改善し続けるので、お楽しみに」とも述べていますが、ロードマップや時期は示されていません。

omni-toolsのDockerでのデプロイ

セルフホスティングのために、READMEはDockerコマンドとDocker Composeサービス定義を提供しています。コマンドは`docker run -d --name omni-tools --restart unless-stopped -p 8080:80 iib0011/omni-tools:latest`です。Composeファイルは、同じイメージ、コンテナ名、再起動ポリシー、ポートマッピングを定義しています。READMEはDockerイメージが約28MBであることを強調し、「超軽量」と呼び、デプロイが速くセルフホストが簡単だと付け加えています。ハードウェア要件、環境変数、またはこれらの例以外の本番設定の指示はありません。

omni-toolsの開発環境のセットアップと新ツールの雛形

READMEによると、このプロジェクトはTypeScriptで書かれたReactアプリケーションで、コンポーネントにMaterial UI、アイコンにIconifyを使用しています。ローカルで実行するには、READMEは`git clone https://github.com/iib0011/omni-tools.git`、次に`cd omni-tools`、`npm i`、`npm run dev`を挙げています。`script:create:tool`というスクリプトが新しいツールの雛形を作成します。READMEには`npm run script:create:tool split pdf`や`npm run script:create:tool compress image/png`のような例があり、Windowsでは`folder1\folder2`を使用します。READMEはテスト用の`npm run test`とエンドツーエンドテスト用の`npm run test:e2e`も記載しています。テストランナーの名前や単一ツールのテスト方法は指定されていません。

omni-toolsの翻訳ワークフローとLocizeスポンサー

READMEによると、翻訳ファイルは`public/locales`に保存されています。開発者はこれらのファイルを直接編集するよう指示され、非開発者は招待リンクを介してLocizeプロジェクトに誘導されます。Locizeはスポンサーとしてもリストされており、READMEはそのツールが「翻訳管理をシンプルで開発者に優しいものにする」と述べています。READMEは、翻訳の読み込み方法、存在するロケールの数、新しい言語の追加方法については説明していません。リポジトリのメタデータには言語情報は含まれていません。

omni-toolsのMITライセンスとその範囲

OmniToolsはMITライセンスの下で配布されており、著作権は2024年にIbrahima Gaye Coulibalyに帰属します。ライセンス文書は、著作権表示と許可表示が含まれることを条件に、ソフトウェアのコピーの使用、複製、修正、統合、公開、配布、サブライセンス、販売の権利を付与します。保証は否認されています。ソフトウェアは「現状のまま」提供され、商品性、特定目的への適合性、非侵害を含む明示的または黙示的な保証は一切ありません。ライセンスは、セキュリティ、サポート、メンテナンスについては何も述べていません。READMEには質問用のメールアドレスとDiscordサーバーがリストされていますが、これらはライセンスの一部ではありません。

OmniToolsの「クライアント側で処理する」という説明は、利用者の端末からファイルが出ないという設計上の主張であり、すべてのツールが同じ負荷や形式を受け持つという意味ではない。画像、動画、PDF、JSON、CSV、XMLでは、ブラウザのメモリ量とファイルサイズによって結果が変わり得る。Docker版はコンテナ名を`omni-tools`、HTTPポートを8080から80へ割り当て、`unless-stopped`で再起動する例がREADMEにある。自前ビルドではReact、TypeScript、Material UIを使い、`npm run script:create:tool`で配置先を指定した雛形を作れる。翻訳ファイルは`public/locales`にあり、非開発者向けの編集経路としてLocizeが案内されている。

編集部の結論

OmniToolsは、画像やPDFを外部へ送らずブラウザ内で処理したい個人や小規模チーム、Dockerでまとめて起動したい運用者に向く。サーバー側の変換処理や大容量ファイルの性能保証を求める用途には、READMEだけでは判断材料が足りない。まず固定したファイルで各ツールの入出力を確認し、`docker run`のポート公開、コンテナ更新、`npm run test`と`npm run test:e2e`の結果を記録する。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート