Repolode
AndySkaura

AndySkaura/mifun-storage

Telegram Channelを使った小容量ファイル向けストレージ。ブログやMarkdownメモ用の自前画像ホストとして利用できます。

代替できる製品:Google Drive

スター
249
フォーク
28
未解決の Issue
0
最終コミット
先月

これは何?

Mifun Storage (米饭云盘) は、小容量ファイルをTelegram Channelに保存し、ディレクトリ、ファイルのメタデータ、Telegramとの紐付け情報だけをSQLiteまたはMySQLで管理します。アップロードとダウンロードはNode.js経由でストリーミングされ、一時ファイルをローカルディスクに書き込まないため、アプリケーションサーバーにファイル内容を保存する領域は必要ありません。

主な用途は、ブログ、静的サイト、Markdownメモ向けの個人用画像ホストです。アップロードした画像には固定のランダムなcontentTokenが割り当てられ、プレビュー、ダウンロード、サムネイル取得に使える公開URLになります。また、ドラッグ&ドロップでのアップロード、タグ、任意のパスワードを設定できるストレージ領域、全体検索を備えたFinder風のWebファイルマネージャーも含まれています。

ファイルの転送には公式のTelegram Bot APIを使うため、アップロードは最大50 MiB、ダウンロードは最大20 MiBに制限されます。高トラフィックな公開ホスティングやCDN相当の配信ではなく、同時接続数の少ない単一インスタンスでの利用を想定しています。

主な機能

  • 01ファイル本体をTelegram Channelに保存し、メタデータをSQLiteまたはMySQL 8.xで管理します。
  • 02一時ファイルをディスクに書き込まず、アップロードとダウンロードをストリーミングします。
  • 03プレビュー、ダウンロード、サムネイル取得用の、固定された公開コンテンツリンクを提供します。
  • 04ドラッグ&ドロップでのアップロード、複数選択、タグに対応したWebファイルマネージャーを備えています。
  • 05匿名での読み書き権限と任意のパスワードを設定できるストレージ領域に対応しています。
  • 06DockerおよびDocker Composeによるデプロイ方法を用意しています。

ユースケース

  • ブログ、静的サイト、ObsidianやTyporaのMarkdownメモ向けの画像ホスト。
  • 定期実行ジョブで生成されるログ、レポート、スクリーンショットの保管。
  • 個人または小規模チームで使う、ドキュメントや小容量ファイル用のパーソナルクラウド。

クイックスタート

  1. 1

    env テンプレートをコピーする

    cp .env.example .env
  2. 2

    依存関係をインストールする

    npm install
  3. 3

    .env の TELEGRAM_BOT_TOKEN と TELEGRAM_STORAGE_CHAT_ID を設定してから、dev server を起動する

    npm run dev

使う前に知っておきたいこと

  • ファイルの保存には Telegram Bot と Telegram Channel が必要です。
  • Telegram Bot API により、アップロードは 50 MiB、ダウンロードは 20 MiB までに制限されます。
  • SQLite はアプリの単一インスタンスのみをサポートします。共有データベースには MySQL 8.x が必要です。
  • 高トラフィックの公開画像ホスティングや複数ユーザーでの共同作業を想定していません。CDN と高可用性には対応していません。

トピック

よくある質問

mifun-storage とは?
Telegram Channelを使った小容量ファイル向けストレージ。ブログやMarkdownメモ用の自前画像ホストとして利用できます。 Mifun Storage (米饭云盘) は、小容量ファイルをTelegram Channelに保存し、ディレクトリ、ファイルのメタデータ、Telegramとの紐付け情報だけをSQLiteまたはMySQLで管理します。アップロードとダウンロードはNode.js経由でストリーミングされ、一時ファイルをローカルディスクに書き込まないため、アプリケーションサーバーにファイル内容を保存する領域は必要ありません。
mifun-storage は無料で使えますか?ライセンスは?
mifun-storage は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
mifun-storage は今もメンテナンスされていますか?
半年以内に更新あり。mifun-storage の最終コミットは 2026年9月10日 です。
mifun-storage は何に使えますか?
ブログ、静的サイト、ObsidianやTyporaのMarkdownメモ向けの画像ホスト。 定期実行ジョブで生成されるログ、レポート、スクリーンショットの保管。 個人または小規模チームで使う、ドキュメントや小容量ファイル用のパーソナルクラウド。
mifun-storage のインストール方法は?
env テンプレートをコピーする: cp .env.example .env 依存関係をインストールする: npm install .env の TELEGRAM_BOT_TOKEN と TELEGRAM_STORAGE_CHAT_ID を設定してから、dev server を起動する: npm run dev
mifun-storage はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/AndySkaura/mifun-storage

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト