blocace-covid19 is a COVID-19 data update dashboard based on Black Dashboard by Creative Tim as UI (React) and Blocace as backend service (blockchain).
Why bothering using a blockchain rather than a relational or document database as the data provider?
It provides technically:
- immutable (blockchain structure and P2P consensus)
- verifiable (digital signature)
data store, which intrinsically deliveries greater data accountability.
Click the screenshot to see live demo.
Only run the UI by making REST calls to the demo Blocace at endpoint https://www.blocace.com:16899
- Make sure you have Node installed
- Clone this repo https://github.com/codingpeasant/blocace-covid19.git
- Go to the repo directory and run
npm install
- Run
npm start
to start a dev server at http://localhost:3000
Run both Blocace and the UI locally
- Make sure you have Node installed
- Get a copy of Blocace v0.0.6 executable for you operation system at: https://github.com/codingpeasant/blocace/releases
- In the terminal, start a Blocace instance:
<YOU_DIR>/blocace_<OS>_amd64_v0.0.6(.exe) server
or its Windows Shell equivalent - Take a note of the
PRIVATE KEY
in the output - Open another terminal or tab ane clone this repo https://github.com/codingpeasant/blocace-covid19.git
- Go to the repo directory and run
node ./setup/load_blocace.js <PRIVATE KEY>
or its Windows Shell equivalent to load demo COVID-19 data to Blocace (PRIVATE KEY
is from Step 4). If you see an error{ message: 'public key not valid' }
, switch back to the Blocace terminal/tab and delete./data
folder and redo Step 3 to generate a newPRIVATE KEY
to rerun this step. - In the same terminal, edit the 4th line of
./src/actions/index.js
by replacing'https', 'www.blocace.com', '16899'
with'http', 'localhost', '6899'
- Run
npm install
- Run
npm start
to start a dev server at http://localhost:3000
Within the download you'll find the following directories and files:
blocace-covid19
.
├── package.json
├── README.md
├── public
│ ├── index.html
│ └── manifest.json
└── src
├── index.js
├── routes.js
├── assets
│ ├── css
│ ├── demo
│ ├── fonts
│ ├── img
│ └── scss
│ ├── black-dashboard
│ │ ├── bootstrap
│ │ │ ├── mixins
│ │ │ └── utilities
│ │ ├── custom
│ │ │ ├── cards
│ │ │ ├── mixins
│ │ │ ├── utilities
│ │ │ └── vendor
│ └── black-dashboard.scss
├── components
│ ├── Footer
│ │ └── Footer.js
│ └── Navbars
│ └── AdminNavbar.js
├── layouts
│ └── Admin
│ └── Admin.js
├── actions
│ └── index.js
├── reducers
│ ├── accountReducer.js
│ ├── covid19Reducer.js
│ └── index.js
└── views
└── Dashboard.js