EWAI PREREQUISITES
The EWAI project integrates a number of newly developed (and still developing) decentralized technologies and platforms integrated together into a functioning energy marketplace prototype. Also, there is a considerable amount of setup involved in getting EWAI running beyond just building this repo. Familiarity with all of the following is required:
- Energy Web: https://energyweb.org
- Energy Web Chain (EWC): https://www.energyweb.org/technology/energy-web-chain/
- Energy Web Token (EWT): https://www.energyweb.org/technology/token/
- Energy Web EW-DOS: https://www.energyweb.org/technology/ew-dos/
- Energy Web Name Service (EWNS): https://ens.energyweb.org
- Energy Web EW-Switchboard: https://switchboard.energyweb.org/
- Energy Web EW-Messaging: https://github.com/energywebfoundation/messaging
- Decentralized Identifiers (DIDs): https://github.com/energywebfoundation/passport-did-auth, https://github.com/energywebfoundation/iam-client-lib, https://en.wikipedia.org/wiki/Decentralized_Identifiers
All of the following platforms/technologies are used in building the EWAI prototype:
- NodeJS (>= v14): https://nodejs.org/en/
- NestJS: https://nestjs.com/
- PostgreSQL: https://www.postgresql.org/
- TimescaleDB (optional): https://www.timescale.com/
- JavaScript: https://en.wikipedia.org/wiki/JavaScript
- TypeScript: https://www.typescriptlang.org/
- React: https://reactjs.org/
- Gatsby: https://www.gatsbyjs.com/
- PrismaJS ORM: https://prisma.io
- Web3 dApps: https://web3js.readthedocs.io/en/v1.3.0/#
- Grap QL: https://graphql.org/
- PassportJS: http://www.passportjs.org/
To build and use the EWAI-MARKET repo, you must also have successfully prior built and deployed an EWAI-SERVER instance, and knowledge of Ocean Protocol is required:
- Ocean Protocol: https://oceanprotocol.com/
- Ocean Protocol V3 Marketplace: https://github.com/oceanprotocol/market
ADDITIONAL CONSIDERATIONS
It is also necessary for those who are setting up a Energy Data Marketplace to be familiar with the PTD data that is being emitted by the DER devices they are collecting data from. Each device and data-set has (optionally) schema checking on it (if Json message formats are used) to help prevent "junk" from getting into the data. This ensures a homogenous dataset for each defined Energy Data Asset (TLDR: each record of the dataset has the exact same fields and format). Hence, it is fairly technical at this time to setup an EWAI marketplace from start to finish, requiring a knowledge, setup and provisioning of a number of subsystems, technologies and platforms utilized.
EW-SWITCHBOARD ROLES
You must also be familiar with (and have setup) various EWNS and Switchboard names, roles, claims, users, wallet address, etc. Information on how EWAI utilizes EWNS and DID roles can be found here.
EW-MESSAGING
You must also be familiar EW-Messaging as described here.