ethdrive
v1.1.6
Published
next generation netdrive
Downloads
8
Readme
A peer-to-peer data storage that leverages with blockchain to ensure data provenance
Currently, this is an alpha version.
Demo video is at https://www.youtube.com/watch?v=_0w9w28CM5Y .
Installation
npm install -g ethdrive
- Install Go version of Ethereum. Instruction can be found here.
- Install IPFS. Instruction can be found here.
- Make sure Ethereum and IPFS executables are in your path.
- Configure EthDrive using
ethdrive init
. If you choose to use a private blockchain, you should provide--EthGenesis PATH_TO_GENESIS_FILE
to allow it to initialise the Ethereum with that custom genesis file.PATH_TO_GENESIS_FILE
is the path to the genesis file of the private Ethereum blockchain.
For uploader and people putting comments
If you wish to upload, you need to have your Ethereum account set up.
ethdrive list-account
will show all the accounts that ethdrive can use. ethdrive new-account
will guide you to create a new Ethereum account. Every time you upload a file or add a comment, you have to pay a small amount of Ether as it is required for the Ethereum. Insufficient balance will cause those operations fail.
To Use
- Before all the operations, EthDrive local node should be started. You can use
ethdrive start
to do so, it will help your to setup your Ethereum node and IPFS node. Or, you may set them up manually. - After the Ethereum database is synchronized, you may access to the latest data.
Available Commands
All commands have --help
parameter provided to guide you.
| Command | Description | |--------------|----------------------------------------------| | init | Configure the environment | | start | Start daemon processes for using EthDrive | | new-account | Create a new Ethereum account | | list-account | List Ethereum accounts | | upload | Upload a file | | download | Download a file | | get | Show the content of the file in the terminal | | query | Get information (metadata) about a file | | comment | Get comments or add a comment to a file | | provide | To be a provider of a file | | unprovide | To NOT be a provider a file | | help [cmd] | Display help for [cmd] |