Skip to content

kodethon/KoDrive

Repository files navigation

KoDrive

Build PyPI license

A continuous, decentralized, file synchronization, command-line tool. Synchronize remote files and directories across different devices with an easy-to-use CLI.

Getting Started

Install KoDrive

To set kodrive as a local command:

$ curl https://raw.githubusercontent.com/Jvlythical/KoDrive/master/static/get-kodrive.py | python

Initialize the KoDrive Daemon

$ kodrive sys start

Receive Directories

  1. Provide the other person with your system key:
$ kodrive sys key 
  1. The person sharing their directory will then provide a directory key to link with:
$ kodrive link <DIRECTORY-KEY>

Note: linking will synchronize both directories; it is recommended for a receiver to link an empty directory.

Share Directories

  1. The other user needs to be authorized (via their system key) to receive the directory:
$ kodrive auth <SYSTEM-KEY> 
  1. Then obtain and provide the below directory key back to the other user:
$ kodrive dir key <PATH>

Client-Client

Figure 1. An illustration of the above process.

Figure 2. A video of the above process.

Stop Synchronization

Receive Directories

The receiver(s) can only kodrive dir free <PATH> since it is not their directory:

$ kodrive dir free <PATH>

Share Directories

The sharer can deauthorize access to certain users since they own the directory:

kodrive auth -R <RECEIVER-SYSTEM-KEY> --path <PATH> deauthorizes a certain receiver from a directory. (-R for --remove)

Furthermore, the sharer can completely remove the directory from the daemon which will deauthorize all devices from that directory:

$ kodrive dir free <PATH>

Dependencies

$ curl https://bootstrap.pypa.io/get-pip.py | sudo python
$ pip install --user virtualenv

Releases

No releases published

Packages

No packages published