Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/khrj/teledrive

TeleDrive lets you automatically backup all your files to telegram saved messages - this means FREE, UNLIMITED storage
https://github.com/khrj/teledrive

backup electron restore telegram

Last synced: 7 days ago
JSON representation

TeleDrive lets you automatically backup all your files to telegram saved messages - this means FREE, UNLIMITED storage

Awesome Lists containing this project

README

        

TeleDrive logo

> TeleDrive lets you automatically backup ANY files to Telegram Saved Messages - this means **UNLIMITED** storage, as long as each file is under 2GB



Download as an AppImage

Download links:

Windows (NSIS) --- macOS (DMG)

---

Alternatively, for macOS, install using [homebrew](https://brew.sh/)
```bash
brew cask install --no-quarantine khushrajrathod/teledrive/teledrive
```
> See [code signing](https://github.com/khrj/TeleDrive/issues/10) for more info on why --no-quarantine is used

# Screenshots

Authentication - Phone Number Authentication - Select Dir Authentication - Success Conflict

# How does it work?
TeleDrive watches a folder for changes and automatically uploads any files contained within that folder to Telegram's saved messages. TeleDrive tags sub folders with their names, so when you restore your files using TeleDrive, you automatically get your folder structure back. For e.x if a TeleDrive's synced folder contains two sub folders, each containing one file:

```
TeleDriveSync ---- ----- Folder1 ----- MyFile1.txt
|
|
|
| ----- Folder2 ----- MyFile2.txt

```

Then TeleDrive will upload your files with the following tags:

- #TeleDrive /Folder1/MyFile1.txt
- #TeleDrive /Folder2/MyFile2.txt

This preserves your folder structure, even in a chat like Telegram's saved messages - This means that when you restore your files, you get the exact same folder structure back.

```
TeleDriveSync ---- ----- Folder1 ----- MyFile1.txt
|
|
|
| ----- Folder2 ----- MyFile2.txt
```

# Features

- Watch a folder for changes and automatically reupload when files are changed
- Preserve folder structure when restoring using TeleDrive
- Uses a master file for quickly finding messages and file versioning
- SHA256 based file versioning
- Queue viewer for uploads
- Built in conflict resolver
- When there's a newer file on Saved Messages but you're trying to backup

# Running from source
1. Clone repository:
```bash
git clone https://github.com/khrj/TeleDrive
cd TeleDrive
```

2. Get dependencies:
```bash
yarn
```

3. Run:
```bash
yarn start
```

# Built with:

- [Electron](https://www.electronjs.org/)
- [Electron Builder](https://www.electron.build/)
- [Airgram](https://airgram.io/)
- [Chokidar](https://github.com/paulmillr/chokidar)
- [Electron Store](https://github.com/sindresorhus/electron-store#readme)
- [ncp](https://github.com/AvianFlu/ncp)
- [Electron Log](https://github.com/megahertz/electron-log)

# License:
- TeleDrive is licensed under the GPLv3 license