Skip to content

meduryllc/apodeixi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Apodeixi Verifiable Credentials

Apodeixi is an academic credentials management system built on the EOSIO blockchain platform. It was developed following the Decentralized Identity (DID) framework and the Verifiable Credentials (VC) framework.

Try out our PoC DApp at this link.

The PoC DApp is connected to smart contracts deployed on Jungle Test Network. Create a new account, if you don't already have one, and connect using Scatter. Follow this video to connect your Jungle Test Network account with Scatter.

This product was developed during participation in Spark University Hackathon 2020

Authors: Sai Medury & Lalith Medury
Contact: sai.abhijit777@gmail.com, lalith.aakash970@gmail.com

Installation

Download/clone the project

git clone https://github.com/meduryllc/apodeixi

Unit Tests

We used EOSLime testing framework to develop this application.

Install eoslime using npm

npm install eoslime

Compile contracts

# The command will read contract files from ./contracts folder
# Output will be stored as .abi and .wasm files in ./compiled folder
eoslime compile

Our tests target local nodeos instance, make sure it is running. Also, our tests are not re-runnable so nodeos must be restarted with --delete-all-blocks each time. Run the following command:

nodeos -e -p eosio \
--plugin eosio::producer_plugin \
--plugin eosio::producer_api_plugin \
--plugin eosio::chain_api_plugin \
--plugin eosio::http_plugin \
--plugin eosio::history_plugin \
--plugin eosio::history_api_plugin \
--filter-on="*" \
--access-control-allow-origin='*' \
--contracts-console \
--http-validate-host=false \
--verbose-http-errors --delete-all-blocks >> nodeos.log 2>&1 &

Our tests require hard-coding of EOS account names so we created a script to set-up them up. Unlock cleos wallet and run createAccounts.sh to set-up test accounts.

cleos wallet unlock
bash createAccounts.sh

Check smart contract behavior by running unit tests

# The command will run unit tests from ./tests folder
eoslime test

Local Deployment

Make sure you've initialized scatter before interacting with the DApp

cd /web/client
npm run serve

You can either use the public-private key pair given in this repository or generate your own ECC key pair to issue and verify tokens.