All Projects → stewartmcgown → Uds

stewartmcgown / Uds

Licence: agpl-3.0
Unlimited Drive Storage by splitting binary files into base64

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Uds

InfiniDrive
A project that leverages Google Drive's API and "0 size file" rules for native Docs for unlimited storage space. - A SteelHacks 2019 Project
Stars: ✭ 63 (-98.5%)
Mutual labels:  google-drive, unlimited
Python Aria Mirror Bot
A telegram bot for all your mirror needs
Stars: ✭ 383 (-90.89%)
Mutual labels:  google-drive
slam-mirrorbot
Aria/qBittorrent Telegram mirror/leech bot.
Stars: ✭ 1,072 (-74.5%)
Mutual labels:  google-drive
Google Drive Player Script
Grab google drive streaming links (redirector.googlevideo.com/videoplayback?..)
Stars: ✭ 283 (-93.27%)
Mutual labels:  google-drive
KotlinProject
This repo help for all developer who want to learn android or want to work on advance feature of android. This repo created with help of @awesomeui, @materialdesign and android latest feature. this repo contain major feature like : @awesome UI, @Material design, @firebase (auth, realtime database, firestore, push notification), @database (Room d…
Stars: ✭ 40 (-99.05%)
Mutual labels:  google-drive
Google Drive Ftp Adapter
Google Drive FTP Adapter to connect to google drive through the FTP protocol
Stars: ✭ 292 (-93.05%)
Mutual labels:  google-drive
backuptogoogle
Backup to Google Drive use gdrive
Stars: ✭ 89 (-97.88%)
Mutual labels:  google-drive
Drive Zipextractor
Extract (decompress) ZIP files into Google Drive using the Google Drive API
Stars: ✭ 425 (-89.89%)
Mutual labels:  google-drive
Fb2cal
Fetch Facebook Birthdays events and create an ICS file for use with calendar apps
Stars: ✭ 335 (-92.03%)
Mutual labels:  google-drive
Torrent To Google Drive Downloader
Simple notebook to stream torrent files to Google Drive using Google Colab.
Stars: ✭ 266 (-93.67%)
Mutual labels:  google-drive
Goodls
This is a CLI tool to download shared files and folders from Google Drive.
Stars: ✭ 256 (-93.91%)
Mutual labels:  google-drive
MIRROR-HUNTER
Who are we? We are the Hunters of all Torrent in this world.🗡️.Fork from SlamDevs
Stars: ✭ 86 (-97.95%)
Mutual labels:  google-drive
Stackedit
In-browser Markdown editor
Stars: ✭ 18,744 (+345.86%)
Mutual labels:  google-drive
abap-alv-google-upload-sheet
Sample demonstrating export of ALV Grid data from SAP GUI directly to Google Drive and display exported data snapshots automatically in Google Sheets.
Stars: ✭ 24 (-99.43%)
Mutual labels:  google-drive
Google Drive Upload
Bash scripts to upload files to google drive
Stars: ✭ 403 (-90.41%)
Mutual labels:  google-drive
Torrents-to-Google-Drive
This is a Google Colab notebook with QBittorrent and Rclone, which can download torrents to Google Drive
Stars: ✭ 56 (-98.67%)
Mutual labels:  google-drive
Arozos
General purposed Web Desktop Operating Platform / OS for Raspberry Pis, Now written in Go!
Stars: ✭ 252 (-94.01%)
Mutual labels:  google-drive
Vgrive
Google Drive client for linux
Stars: ✭ 284 (-93.24%)
Mutual labels:  google-drive
Google Drive Ocamlfuse
FUSE filesystem over Google Drive
Stars: ✭ 4,447 (+5.78%)
Mutual labels:  google-drive
Goindex
Index your Google Drive
Stars: ✭ 418 (-90.06%)
Mutual labels:  google-drive

🌌 UDS : Unlimited Drive Storage

Store files in Google Docs without counting against your quota.

sorry @ the guys from google internal forums who are looking at this

Development on a web-based JS version has started here.

Note: After June 1st 2021, starting June 1, 2021, Google will count Docs, Sheets, Slides, Drawings, Forms and Jamboard files against the user's storage quota.

Features

  • Upload files to Google Drive without using storage space
  • Download any stored files to your computer

Logic

  • Google Docs take up 0 bytes of quota in your Google Drive
  • Split up binary files into Google Docs, with base64 encoded text
  • Size of the encoded file is always larger than the original. Base64 encodes binary data to a ratio of about 4:3.
  • A single google doc can store about a million characters. This is around 710KB of base64 encoded data.
  • Some experiments with multi-threading the uploads, but there was no significant performance increase.

Setup & Authentication

  1. Clone the Repository and setup the requirements pip3 install -r requirements.txt
  2. Head to Google's API page and enable the Drive API
  3. Download the configuration file as 'client_secret.json' to the UDS directory
  4. Run python3 uds.py or ./uds.py for initial set up

UDS Core

Upload

> ./uds.py --push Ubuntu.Desktop.16.04.iso
Ubuntu.Desktop.16.04.iso will required 543 Docs to store.
Created parent folder with ID 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Successfully Uploaded Ubuntu.Desktop.16.04.iso: [██████████████████████████████] 100%
[Layout]
./uds.py --push argument

argument: Path_to_file+file_name

List

> ./uds.py --list
Name                      Size   Encoded    ID
------------------------  -----  ---------  ---------------------------------  
Ubuntu.Desktop.16.04.iso  810 MB  1.1 GB    1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Ubuntu.Desktop.18.10.iso  1.1 GB  1.3 GB    1RzzVfN9goHMTkM1Hf1FUWUVS_2R3GK7D

Also supports searching with a query!

> ./uds.py --list "18"
Name                      Size   Encoded    ID
------------------------  -----  ---------  ---------------------------------  
Ubuntu.Desktop.18.10.iso  1.1 GB  1.3 GB    1RzzVfN9goHMTkM1Hf1FUWUVS_2R3GK7D
[Layout]
./uds.py --list

arguments: query

Download

> ./uds.py --pull 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Downloaded Ubuntu.Desktop.16.04.iso: [██████████████████████████████] 100%
[Layout]
./uds.py --pull argument

argument: id_of_file

Delete

> ./uds.py --delete 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
Deleted 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8
[Layout]
./uds.py --delete argument

argument: id_of_file

Alpha Extensions

Grab

> ./uds.py --grab test.7z
Update Successful!
Downloaded test.7z: [██████████████████████████████] 100%
[Layout]
./uds.py --grab argument

argument: name_of_file

Erase

>./uds.py --erase test2.7z
Update Successful!
Deleted test2.7z
[Layout]
./uds.py --erase argument

argument: name_of_file

Update

> ./uds.py --update

Name       Encoded   Size 
---------  --------  -----
file_name  1.1 GB    810 MB 

"User.txt"
Name       Encoded   Size 
---------  --------  -----
file_name  1.1 GB    810 MB 

"data.txt"
{
   "file0": "1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms8"
   "file2": "1fc6JGpX6vUWiwflL1jBxM1YpuMHFAms9"
}
[Layout]
./uds.py --update

arguments: None

Bulk Extensions

Bunch

> ./uds.py --bunch test
test.7z.1 will require 1337 Docs to store.
Created parent folder with ID 1fc6JGpX6vUWiwflL1jBxM1YpuMHFAm12
Successfully Uploaded test.7z.1: [██████████████████████████████] 100%
test.7z.2 will require 1337 Docs to store.
Created parent folder with ID 1fc6JGpX6vUWiwflL1jBxM1YpuQQFAm12
Successfully Uploaded test.7z.2: [██████████████████████████████] 100%
test.7z.3 will require 600 Docs to store.
Created parent folder with ID 1fc6JGpX6vTOiwflL1jBxM1YpuQQFAm12
Successfully Uploaded test.7z.3: [██████████████████████████████] 100%
[Layout]
./uds.py --bunch argument[1] argument[2]

argument[1]: name_in_files, or wildcard "?" without quotes
argument[2]: directory, default is current directory of UDS

Batch

> ./uds.py --batch file_name
Update Successful!
Downloaded file_name.7z.1: [██████████████████████████████] 100%
Downloaded file_name.7z.2: [██████████████████████████████] 100%
Downloaded file_name.7z.3: [██████████████████████████████] 100%
[Layout]
./uds.py --batch argument

arguments: name_in_files, or wildcard "?" without quotes

Wipe

> ./uds.py --wipe file
Update Successful!
Deleted file.7z.1
Deleted file.7z.2
Deleted file.7z.3
[Layout]
./uds.py --wipe argument

arguments: name_in_files, or wildcard "?" without quotes

Only Compatible with Python 3.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].