openethereum/dapps/js-glue
2018-06-05 11:28:35 +02:00
..
src Have space between feature cfg flag (#8791) 2018-06-05 11:28:35 +02:00
build.rs Update license header and scripts (#8666) 2018-06-04 10:19:50 +02:00
Cargo.toml Get rid of clippy remainings. 2017-12-21 11:27:26 +01:00
README.md Updating paths to repos. (#5330) 2017-03-29 15:17:27 +02:00

Parity Dapps (JS-glue)

Code generator to simplify creating a built-in Parity Dapp

How to create new builtin Dapp.

  1. Clone this repository.

    $ git clone https://github.com/paritytech/parity.git
    
  2. Create a new directory for your Dapp. (./myapp)

    $ mkdir -p ./parity/dapps/myapp/src/web
    
  3. Copy your frontend files to ./dapps/myapp/src/web (bundled ones)

    $ cp -r ./myapp-src/* ./parity/dapps/myapp/src/web
    
  4. Instead of creating web3 in your app. Load (as the first script tag in head):

    <script src="/parity-utils/inject.js"></script>
    

    The inject.js script will create global web3 instance with proper provider that should be used by your dapp.

  5. Create ./parity/dapps/myapp/Cargo.toml with you apps details. See example here: parity-status Cargo.toml.

    $ git clone https://github.com/paritytech/parity-ui.git
    $ cd ./parity-ui/
    $ cp ./home/Cargo.toml ../parity/dapps/myapp/Cargo.toml
    $ cp ./home/build.rs ../parity/dapps/myapp/build.rs
    $ cp ./home/src/lib.rs ../parity/dapps/myapp/src/lib.rs
    $ cp ./home/src/lib.rs.in ../parity/dapps/myapp/src/lib.rs.in
    # And edit the details of your app
    $ vim ../parity/dapps/myapp/Cargo.toml # Edit the details
    $ vim ./parity/dapps/myapp/src/lib.rs.in # Edit the details
    

How to include your Dapp into Parity?

  1. Edit dapps/Cargo.toml and add dependency to your application (it can be optional)

    # Use git repo and version
    parity-dapps-myapp = { path="./myapp" }
    
  2. Edit dapps/src/apps.rs and add your application to all_pages (if it's optional you need to specify two functions - see parity-dapps-wallet example)

  3. Compile parity.

    $ cargo build --release # While inside `parity`
    
  4. Commit the results.

    $ git add myapp && git commit -am "My first Parity Dapp".