Self-hosted personal AI agent built on Pi Durable that resumes tasks after process restarts, with subagents, scheduled jobs, a browser UI and an optional WeChat bridge.
AndySkaura/mifun-storage
A Telegram Channel-backed small-file storage system, mainly used as a self-hosted image bed for blogs and Markdown notes.
Open-source alternative to:Google Drive
- Stars
- 249
- Forks
- 28
- Open issues
- 0
- Last commit
- last month
What is it?
Mifun Storage (米饭云盘) stores small files in a Telegram Channel while keeping only directories, file metadata and Telegram mappings in SQLite or MySQL. Uploads and downloads are streamed through Node.js without writing temporary files to local disk, so the application server needs no local storage for file contents.
Its main use is as a personal image host for blogs, static sites and Markdown notes. Uploaded images get a stable random contentToken that serves as a public URL for preview, download and thumbnail requests. The project also includes a Finder-style web file manager with drag-and-drop upload, tags, storage locations with optional passwords, and a global search.
Because files go through the official Telegram Bot API, single uploads are capped at 50 MiB and downloads at 20 MiB. It is aimed at low-concurrency, single-instance use rather than high-traffic public hosting or CDN-grade delivery.
Key features
- 01Stores file contents in a Telegram Channel with metadata in SQLite or MySQL 8.x.
- 02Streams uploads and downloads without writing temporary files to disk.
- 03Provides stable public content links with preview, download and thumbnail endpoints.
- 04Offers a web file manager with drag-and-drop upload, multi-select and tags.
- 05Supports storage locations with anonymous read/write permissions and optional passwords.
- 06Includes Docker and Docker Compose deployment options.
Use cases
- Hosting images for blogs, static sites and Markdown notes in Obsidian or Typora.
- Archiving logs, reports and screenshots generated by scheduled jobs.
- Keeping a personal cloud of documents and small files for a single user or small team.
Quick start
- 1
Copy the env template
cp .env.example .env - 2
Install dependencies
npm install - 3
Fill in TELEGRAM_BOT_TOKEN and TELEGRAM_STORAGE_CHAT_ID in .env, then start the dev server
npm run dev
Things to know
- Requires a Telegram Bot and a Telegram Channel to store files.
- Uploads are capped at 50 MiB and downloads at 20 MiB by the Telegram Bot API.
- SQLite supports only one app instance; MySQL 8.x is needed for shared databases.
- Not designed for high-traffic public image hosting or multi-user collaboration; no CDN or high availability.
Topics
FAQ
- What is mifun-storage?
- A Telegram Channel-backed small-file storage system, mainly used as a self-hosted image bed for blogs and Markdown notes. Mifun Storage (米饭云盘) stores small files in a Telegram Channel while keeping only directories, file metadata and Telegram mappings in SQLite or MySQL. Uploads and downloads are streamed through Node.js without writing temporary files to local disk, so the application server needs no local storage for file contents.
- Is mifun-storage free to use? What license does it have?
- mifun-storage is open source under the MIT license. Check the license terms before using it in commercial products.
- Is mifun-storage still maintained?
- Updated within 6 months. The last commit to mifun-storage was on Sep 10, 2026.
- What can I use mifun-storage for?
- Hosting images for blogs, static sites and Markdown notes in Obsidian or Typora. Archiving logs, reports and screenshots generated by scheduled jobs. Keeping a personal cloud of documents and small files for a single user or small team.
- How do I install mifun-storage?
- Copy the env template: cp .env.example .env Install dependencies: npm install Fill in TELEGRAM_BOT_TOKEN and TELEGRAM_STORAGE_CHAT_ID in .env, then start the dev server: npm run dev
- Where can I get mifun-storage?
- The source code and installation instructions are on GitHub: https://github.com/AndySkaura/mifun-storage
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A self-hosted, privacy-focused AI note-taking app for quickly capturing fleeting thoughts as Markdown cards with natural-language search.
A self-hosted, offline-first knowledge base with an extended Markdown editor, team workspaces, OIDC SSO and S3-backed storage.
Self-hosted AI news digest that condenses Twitter, RSS and other feeds into structured 4-hourly, daily, weekly and monthly summaries.
Open-source notes and knowledge base app with a three-pane layout, instant multi-device sync, and built-in MCP for AI agents, runnable on Cloudflare or Docker.
Self-hosted notes app in a single Go binary, storing notes as Markdown files alongside a local SQLite database with full-text search.