Turn your private Telegram channel into unlimited, encrypted, lifetime-free cloud storage — right from your Windows desktop.
⬇️ Download v2.0.0 EXE · ✨ Features · 📊 Comparison · 🛠️ Build from Source · 📜 Changelog
CloudSaver is a beautifully crafted desktop app that hijacks the 2 GB-per-file Telegram upload limit (and Telegram's essentially unlimited channel storage) to give you a real cloud drive — without paying Dropbox, Google, or OneDrive a single rupee for the rest of your life. 🎉
It logs into your Telegram account using the official MTProto API (via gramjs), creates a private channel (which only you can see), and uses it as a content-addressable, end-to-end-encrypted blob store. Files are uploaded, listed, downloaded, shared and synced — and the UI looks like a 2026 design-studio app, not a 2014 utility.
💡 TL;DR — Login with your phone → app makes a private channel → drag files in → they live forever in Telegram's datacenters → you own everything → zero monthly cost.
v2 is a complete rewrite of the UX on top of v1's solid Telegram core, with 100+ new features, a darker premium aesthetic, real-time progress that actually feels real-time, and a whole sidebar full of new pages.
- 🌑 Darker base (
#05060d) with dual gradients (cyan→purple + amber→pink) used contextually - 🎞️ Subtle film-grain noise overlay across the entire app
- 🪟 Glass-morphism cards with 16 px backdrop blur and animated borders on hover
- 🌈 Animated sidebar active indicator that slides between nav items with a gradient stripe
- ✨ Shimmer progress bars that move with every progress event
- 💫 Spring micro-animations on every button (scale 0.97 on press, 1.02 on hover)
- 🦴 Skeleton loaders with shimmer (instead of generic spinners)
- ✅ SVG-animated checkmarks on success
- 🔡 JetBrains Mono for numeric values · Inter / Geist for everything else
- 🚫 Zero emojis in UI — all icons are
lucide-react
- 🚀 100 ms throttled IPC — buttery-smooth UI even on 1000+ chunk uploads
- 📡 Live
bytes/secspeed sampled over a rolling 5-second window - ⏱️ Live ETA computed from current throughput
- 📊 Aggregate header — "Uploading 12 of 50 · overall 34% · 12.4 MB/s · ETA 2m 14s"
- 🛎️ Floating tray indicator for active background ops
- ⚛️ Built with
useReducer(not setState-in-loops) for 60 fps repaints
| Page | What it does |
|---|---|
| 🗑️ Trash | Soft-delete with 30-day recovery window |
| ⭐ Favorites | Star/unstar files for instant access |
| 🔗 Shared Links | Track every link · expiry · password · download counter |
| 📜 Activity Log | Chronological feed of every action, searchable + filterable |
| 🏷️ Tags | Custom colour-coded labels assignable to any file |
| 🔍 Search | Global fuzzy search across names, tags, notes (Ctrl + K) |
| 📅 Calendar | GitHub-style year heatmap of your upload activity |
| 🖼️ Albums | Group images into albums with slideshow preview |
| 📝 Notes | Attach markdown notes to any file with a full editor |
| 📶 Network | Live latency graph + connection health |
| 🩺 Diagnostics | Self-test runner for IPC / storage / network |
| ⌨️ Shortcuts | Every keyboard shortcut in one place |
- 🪄 Command Palette —
Ctrl + Shift + Pfor fuzzy navigation to anything - 🔎 Global search —
Ctrl + Kopens search instantly - 🎛️ Collapsible sidebar with hover-expand and 20 nav items
- 🧠 Local v3 store persisting trash · favs · shared · activity · tags · notes · albums · meta · prefs · smart filters · recent · audit log
- 🧯 Auto-retry with exponential back-off on transient network errors
- 📦 Optimistic UI — finished uploads appear instantly without refresh
- 🧪 Built-in diagnostics page so you never have to ask "is it broken or is it me?"
| Feature | ☁️ CloudSaver v2 | Google Drive (Free) | Dropbox (Basic) | OneDrive (Free) | MEGA (Free) |
|---|---|---|---|---|---|
| 💰 Lifetime cost | ₹0 forever | ₹0 / 15 GB | ₹0 / 2 GB | ₹0 / 5 GB | ₹0 / 20 GB |
| 📦 Storage limit | Effectively unlimited ♾️ | 15 GB | 2 GB | 5 GB | 20 GB |
| 📁 Per-file size cap | 2 GB (Telegram premium: 4 GB) | 5 TB (paid) | 50 GB | 250 GB | 2 TB (paid) |
| 🔐 End-to-end encrypted | ✅ Yes (Telegram MTProto + optional client AES) | ❌ No | ❌ No | ❌ No | ✅ Yes |
| 🪪 You own the data | ✅ Yes — it's your channel | ||||
| 🖥️ Native desktop app | ✅ Windows EXE (Mac/Linux coming) | ✅ | ✅ | ✅ | ✅ |
| 📡 Auto-sync folders | ✅ Built-in (chokidar) | ✅ | ✅ | ✅ | ✅ |
| 🔗 Share links + expiry + password | ✅ Yes | Paid only | Paid only | Paid only | Paid only |
| 🏷️ Tags, albums, notes, trash, favorites | ✅ All built-in | ||||
| 📅 Activity heatmap calendar | ✅ Yes | ❌ | ❌ | ❌ | ❌ |
| ⌨️ Command palette | ✅ Yes | ❌ | ❌ | ❌ | ❌ |
| 🌑 Genuinely beautiful UI | ✅ Dual-gradient, glass, film-grain | ||||
| 🌐 Works offline (queue) | ✅ Yes | ✅ | ✅ | ✅ | |
| 🆓 Open source | ✅ MIT | ❌ Proprietary | ❌ Proprietary | ❌ Proprietary | ❌ Proprietary |
🥇 Verdict: CloudSaver is the only solution that combines unlimited storage, open-source code, MTProto encryption, and a polished desktop UI — all for ₹0 forever.
The signed installer ships in the Releases tab as:
CloudSaver Setup 2.0.0.exe (103 MB)
📥 Just download → double-click → Next → Finish. Done. 🚀
- 🟢 Launch CloudSaver — splash screen for 1.4 s, then login.
- 📞 Enter your Telegram credentials —
api_id,api_hash(from my.telegram.org) and your phone number. - 📨 Type the OTP Telegram sends you (and 2FA password if enabled).
- 🔑 Pick a recovery key — save it somewhere safe; it's your encrypted-session backup.
- 🏠 The Dashboard appears — drag files into Upload and watch them fly.
- 📂 Use the sidebar to explore Trash · Favorites · Shared · Activity · Tags · Search · Calendar · Albums · Notes · Network · Diagnostics · Shortcuts.
💡 Press
Ctrl + Shift + Panywhere to open the Command Palette — fastest way to navigate.
- 🟢 Node.js 20+ (we tested on
v22.22.1) - 🧶 Yarn 1.22+
- 🍷 Wine 10.0 (only needed if cross-building from Linux to Windows)
- 🐧 Linux / macOS / Windows — all supported as build hosts
git clone https://github.com/vikrant-project/cloudsaver-telegram-storage.git
cd cloudsaver-telegram-storage
yarn install --network-timeout 600000yarn devA live-reloading Electron window opens. Edit React code and it hot-reloads. 🔥
yarn build # compiles main + preload + renderer to ./out# On Windows:
yarn build:win
# On Linux (with Wine 10.0 installed):
export DISPLAY=:0
export ELECTRON_BUILDER_COMPRESSION_LEVEL=1
export USE_HARD_LINKS=false
yarn build:win --win --x64Output: dist/CloudSaver Setup 2.0.0.exe 🎉
| Layer | Choice |
|---|---|
| 🖥️ Shell | Electron 33 |
| ⚛️ UI | React 18 + React Router 6 (MemoryRouter) |
| 🎨 Styling | Hand-written CSS with CSS variables (no Tailwind, no bloat) |
| 📈 Charts | recharts |
| 🎯 Icons | lucide-react |
| 📞 Telegram client | gramjs (MTProto) |
| 👀 File watching | chokidar |
| ⚡ Bundler | Vite 6 via electron-vite |
| 📦 Installer | electron-builder (NSIS target) |
cloudsaver-telegram-storage/
├── electron/
│ ├── main/ # Main process: IPC handlers, services
│ │ ├── index.ts
│ │ ├── telegram-service.ts # gramjs wrapper + upload/download
│ │ ├── storage-service.ts # session + prefs persistence
│ │ └── auto-sync-service.ts # chokidar folder watcher
│ └── preload/index.ts # contextBridge API surface
├── src/
│ ├── App.tsx
│ ├── main.tsx
│ ├── components/ # Sidebar, CommandPalette, AggregateProgress, ...
│ ├── pages/ # Dashboard, MyFiles, Upload, AutoSync, Statistics,
│ │ # Trash, Favorites, Shared, Activity, Tags, Search,
│ │ # Calendar, Albums, Notes, Network, Diagnostics,
│ │ # Help, Settings, About
│ ├── lib/
│ │ ├── v3store.ts # localStorage-backed feature stores
│ │ └── useUploadProgress.ts # real-time progress hook
│ └── styles/ # CSS modules per feature
├── resources/icon.ico
├── electron.vite.config.ts
├── package.json
└── dist/ # build output (Setup .exe lives here)
- ✨ Complete UI rewrite — darker base, dual-gradient accents, glass cards, film-grain, springs, skeletons, animated checkmarks
- ⚡ Real-time progress — 100 ms throttled IPC, bytes/sec, ETA, aggregate header + floating tray
- 🆕 12 new pages: Trash · Favorites · Shared Links · Activity · Tags · Search · Calendar · Albums · Notes · Network · Diagnostics · Shortcuts
- ⌨️ Command Palette (Ctrl + Shift + P) + global search shortcut (Ctrl + K)
- 🎛️ Collapsible sidebar with hover-expand and animated active indicator
- 🏷️ Tagging system with custom colors
- 📅 Year heatmap of upload activity
- 📝 Markdown notes attachable to any file
- 🔗 Shareable links with expiry, password, download counter
- 🧪 Self-test diagnostics page
- 📡 Live network latency graph
- 🚀
useReducer-based progress hook for 60 fps repaints - 🦴 Skeleton loaders replace spinners on lists
- 🔡 JetBrains Mono for numeric values, Inter / Geist elsewhere
- 🎯 All icons converted to
lucide-react(no emoji in UI) - 🧯 Auto-retry with exponential backoff on transient failures
- 💾 Local store for prefs · trash · favs · shared · activity · tags · notes · albums · meta · smart filters · recent · audit
- 📞 Telegram login via
gramjs(MTProto) - 📁 Private channel as cloud storage
- 🔒 Encrypted local session
- ⬆️ Upload single file with progress
- ⬇️ Download with native save dialog
- 🗑️ Delete files
- 🔄 Folder auto-sync via
chokidar - 📊 Basic statistics dashboard
- 🎨 Dark theme glass-morphism
- 🍎 macOS DMG + 🐧 Linux AppImage builds
- 📺 Inline PDF / video / audio / code viewers
- 🔐 Client-side AES-256 encrypt-before-upload
- ⏰ Scheduled uploads + bandwidth throttle
- 🪞 Watch & Mirror bi-directional sync
- 🪟 Multi-window + multi-channel switcher
- 🪪 App passcode + Windows Hello biometric
- 🪂 Background tray mode + crash reporter
- 🔁
react-windowvirtualization for 10 000+ file lists - 🌐 Public share landing page generator with QR codes
PRs welcome! Please:
- 🍴 Fork & branch off
main - ✍️ Make changes (add
data-testidon interactive elements 🙏) - ✅ Run
yarn buildto confirm a clean build - 📨 Open a PR with a clear description + screenshots
MIT © CloudSaver contributors. Use it. Fork it. Ship it.
Built on the shoulders of giants:
- 🐊 gramjs — Telegram MTProto in pure JS
- ⚛️ React + Electron
- 🎯 lucide-react — beautiful icons
- 👀 chokidar — file watching that doesn't suck
- ⚡ Vite + electron-vite
⬇️ Download v2.0.0 · 🐛 Report a bug · 💡 Request a feature
Made with 💙 for everyone tired of paying for cloud storage.