All Projects → Mrigank11 → Embetacloud

Mrigank11 / Embetacloud

Licence: mit
directly upload files to google drive

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Embetacloud

MIRROR-HUNTER
Who are we? We are the Hunters of all Torrent in this world.🗡️.Fork from SlamDevs
Stars: ✭ 86 (-47.56%)
Mutual labels:  torrent, google-drive
Cloud Torrent
☁️ Cloud Torrent: a self-hosted remote torrent client
Stars: ✭ 5,071 (+2992.07%)
Mutual labels:  cloud, torrent
Arozos
General purposed Web Desktop Operating Platform / OS for Raspberry Pis, Now written in Go!
Stars: ✭ 252 (+53.66%)
Mutual labels:  cloud, google-drive
Cloudcross
CloudCross it's opensource crossplatform software for syncronization a local files and folders with many cloud providers. On this moment a Cloud Mail.Ru, Yandex.Disk, Google drive, OneDrive and Dropbox support is available
Stars: ✭ 185 (+12.8%)
Mutual labels:  cloud, google-drive
Bhadoo Cloud
Directly Upload to Google Drive from Torrent or URLs
Stars: ✭ 136 (-17.07%)
Mutual labels:  google-drive, torrent
MiXLab
MiXLab is a mix of multiple amazing Colab Notebooks found on the internet such as rcloneLab, RLabClone, Torrent to Google Drive Downloader and some more.
Stars: ✭ 143 (-12.8%)
Mutual labels:  torrent, google-drive
Raidrive.translation
RaiDrive Translation
Stars: ✭ 518 (+215.85%)
Mutual labels:  cloud, google-drive
Torrent-To-Google-Drive-Downloader
Simple notebook to stream torrent files to Google Drive using Google Colab and python3.
Stars: ✭ 256 (+56.1%)
Mutual labels:  torrent, google-drive
Telegram Clonebot
Simple Bot to clone Google Drive Files (or Folders) to your Team Drive[or Normal Drive]. P.S This is not a Mirror Bot. Enjoy ✌🏻
Stars: ✭ 114 (-30.49%)
Mutual labels:  cloud, google-drive
Cloud Media Scripts
Upload and stream media from the cloud with or without encryption. Cache all new and recently streamed media locally to access quickly and reduce API calls
Stars: ✭ 84 (-48.78%)
Mutual labels:  cloud, google-drive
Torrent To Google Drive Downloader
Simple notebook to stream torrent files to Google Drive using Google Colab.
Stars: ✭ 266 (+62.2%)
Mutual labels:  google-drive, torrent
Google Drive Torrent
Download torrents to your Google Drive fast and direct
Stars: ✭ 149 (-9.15%)
Mutual labels:  google-drive, torrent
Torrent To Google Drive Downloader
Simple notebook to stream torrent files to Google Drive using Google Colab and python3.
Stars: ✭ 63 (-61.59%)
Mutual labels:  google-drive, torrent
Drivesync
Google Drive synchronization for Linux
Stars: ✭ 148 (-9.76%)
Mutual labels:  cloud, google-drive
Rapidbay
Self-hosted torrent video streaming service compatible with Chromecast and AppleTV deployable in the cloud
Stars: ✭ 163 (-0.61%)
Mutual labels:  cloud, torrent
Yolov4 Cloud Tutorial
This repository walks you through how to Build and Run YOLOv4 Object Detections with Darknet in the Cloud with Google Colab.
Stars: ✭ 153 (-6.71%)
Mutual labels:  cloud
Dbhub.io
A "Cloud" for SQLite databases. Collaborative development for your data. :)
Stars: ✭ 161 (-1.83%)
Mutual labels:  cloud
Kubernetes Plugin
Jenkins plugin to run dynamic agents in a Kubernetes/Docker environment
Stars: ✭ 1,998 (+1118.29%)
Mutual labels:  cloud
Magnet And Torrent Search Engine
磁力链接和 BT 种子的搜索引擎
Stars: ✭ 154 (-6.1%)
Mutual labels:  torrent
Diagram Maker
A library to display an interactive editor for any graph-like data.
Stars: ✭ 2,086 (+1171.95%)
Mutual labels:  cloud

screenshot

eMbeta Cloud

New concept to directly upload files from server to Google Drive. It will give you a proxy and will automatically download files to server, after which you can easily upload it Google Drive or download it to your PC.

Somebody is requested to upload it to a high-speed server so that it's made open to all.

Features

  • Single Page UI (made with semantic-ui and angularJS)
  • Responsive UI
  • Realtime information update
  • Support for torrents
  • Can upload complete folders to Google Drive with click of a button
  • Zip and download torrents
  • Zip and upload torrents to Drive
  • Auto-Upload to GDrive on completion
  • Multiple Cloud Storage support, currently :
    • Google Drive
    • Mega

Usage

First clone the repo and install dependencies:

npm install

You have to make a google developers project and set the following environment variables:

  • GOOGLE_CLIENT_ID
  • GOOGLE_CLIENT_SECRET
  • GOOGLE_REDIRECT_URL (it should be <server address>/oauthCallback by default)

Other environment variables:

  • TBP_PROXY: piratebay proxy to use (default: https://thepiratebay.org)

Ensure that you request full google drive access permission and basic G+ info in your google project

To start server, run:

npm start

For Heroku:

Heroku is no longer supported.

For Docker:

`docker run -d -p 3000:3000 -e GOOGLE_CLIENT_ID='***' -e GOOGLE_CLIENT_SECRET='***' -e GOOGLE_REDIRECT_URL='***' mrigank11/embetacloud node server/server.js`

Fill *** with appropriate values.

If you want to debug, add -e DEBUG='eMCloud:*' and remove the -d

Debugging

eMbeta Cloud is debug compatible, to get debug info set environment variable DEBUG=eMCloud:* and start server.

Upcoming Features

  • Incognito mode

How to contribute

  • Add new Cloud Storage
  • Find bugs and report them
  • Suggest new features
  • Fix bugs

How to add Cloud Storage

Adding new clouds is easy, just follow these steps:

  1. Create new folder inside /server/Storages/ (e.g. /server/Storages/DropBox) and add .ts file to it with same name as that of folder (say /server/Storages/DropBox/Dropbox.ts)
  2. Now you've to write your code in that file, the template is
export class CloudName extends EventEmitter{
    constructor(credentials){
        super();
        //store credentials, they can be username/password or OAuth Tokens etc.
    }
    static getURL(){
        //return the url on which the user will be redirected for credentials, can be OAuth Consent Page or a page on server itself.
    }
    static callbackHandler(query,callback){
        //handle the recieved credentials, 'query' contains the GET params. (like for OAuth, authentication code is 'query.code')
        //after successfull authenticaltion, return creds to 'callback' to be stored as session variable
        //if authentication fails, call the callback as: callback(0)
        // when user requests a file upload, credentials from session will be used to initialize this class (the constructor will be called)
    }
    public uploadFile(readStream, totalSize, mime, filename){
        //handle the upload procedure
        //it should emit => progress        : {name,bytesUploaded,size}
        //                  fileUploaded    : {size, name , error} 
    }
    public uploadDir(localFolderPath){          //not necessary
        //upload a local directory
        //should emit    => addSize    : size      size in bytes to be added to total upload size
        //may emit       => mkdir      : name      name of cloud directory created
    }
}

For example, see /server/Storages/GDrive/GDrive.ts

  1. Add new storage to /server/Storages/Storages.ts (import it and add in storages object)
  2. Compile typescript

When user clicks login, url is generated by calling getURL(), it may be OAuth Consent Page or a custom one. After redirection from OAuth Page(maybe other also), user is redirected to /oauthcallback/ with credentials as GET paramaters, callbackHandler(query) is called with these params. After Successfull login, credentials passed to callback are stored as session variables which are used to initialize this class i.e. constructor will be called with these creds.

getURL() may redirect url to custom page. For Example: returning /login/mega will open /server/Storages/mega/login.html

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].