forked from DECA/DAOTask
Adding modules 1 and 2 base templates
This commit is contained in:
parent
fa524bef13
commit
ed4ed8c95e
22
README.md
22
README.md
|
@ -37,7 +37,7 @@ Goal is to develop all the architecture require for the [DECA Protocol](https://
|
|||
- [ ] Zero Knowledge Proof Carbon Offset (Privacy and Fungibility).
|
||||
|
||||
|
||||
## General Module Description
|
||||
## Module Description
|
||||
|
||||
### Module 0
|
||||
|
||||
|
@ -49,9 +49,23 @@ management for the assets.
|
|||
|
||||
### Module 1
|
||||
|
||||
.
|
||||
.
|
||||
.
|
||||
This module will ensure that the website and its assets runs in a HELIA instance.
|
||||
This will add seeds and thus network speed to the content distribution. All the
|
||||
assets should be integrated in the project so that it does not depend on centralized
|
||||
systems. This module is important to ensure frontend decentralization.
|
||||
|
||||
[Module 1 Specification](./module1.md)
|
||||
|
||||
### Module 2
|
||||
|
||||
This module will include its own ethers wasm implementation, so that it connects
|
||||
to the Ethereum blockchain and perform some testing operations. The Goal is to
|
||||
ensure the ethers connector can be decentralized and included in the project code.
|
||||
This module is important to ensure comunication with the smart contracts in a
|
||||
decentralized way.
|
||||
|
||||
[Module 2 Specification](./module2.md)
|
||||
|
||||
### Module 7
|
||||
|
||||
![dig1](./assets/diagram1.svg)
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
# Module 1 Specification
|
||||
|
||||
## Goal
|
||||
|
||||
This module will ensure that the website and its assets runs in a HELIA instance.
|
||||
This will add seeds and thus network speed to the content distribution. All the
|
||||
assets should be integrated in the project so that it does not depend on centralized
|
||||
systems. This module is important to ensure frontend decentralization.
|
||||
|
||||
|
||||
## Dependencies
|
||||
- [ ] Module 0
|
||||
|
||||
## ToDo
|
||||
|
||||
- [ ] Research HELIA
|
||||
- [ ] How to solve the website hashing paradigm
|
||||
- [ ] Detect and Report issue (Update this specification)
|
||||
- [ ] Research and test possible solutions.
|
||||
- [ ] Implement solution to achieve the goal.
|
||||
|
||||
## Report
|
||||
|
||||
### HELIA Specification
|
||||
* [Helia library](https://github.com/ipfs/helia)[^1]
|
||||
* [Helia Examples](https://github.com/ipfs-examples/helia-examples/tree/main/examples/helia-webpack)[^2]
|
||||
* [Helia Example by Phind](https://www.phind.com/search?cache=v6nzolbm7xl10xvhgfih6bvz)[^3]
|
||||
|
||||
### Hashing paradigm
|
||||
|
||||
To have a self decentralized website we need to add a hash to the code this hash
|
||||
known as CID is generated based on all the assets hashed data, so it makes a
|
||||
paradigm problem to add the hash if its not know previously in the code, because
|
||||
if we add it to the code of the site, the project hash will change.
|
||||
|
||||
### Possible solutions
|
||||
|
||||
1. Using SmartContract: Use a smart contract with an IPNS and a ENS
|
||||
(Ethereum Name Service NFT) which points to an IPNS that will be updated by the
|
||||
project developer. This gives us the flexibility to update, and security that
|
||||
the blockchain offers. This can also be an alternative to avoid MITM and other
|
||||
security issues.
|
||||
|
||||
* Pros: ToDo
|
||||
|
||||
* Cons: ToDo
|
||||
2.
|
||||
|
||||
## Notes and further developments.
|
||||
|
||||
1. Make the ENS Updateable by a DAO and a smart wallet.
|
||||
|
||||
## References
|
||||
|
||||
[^1]: https://github.com/ipfs/helia
|
||||
[^2]: https://github.com/ipfs-examples/helia-examples/tree/main/examples/helia-webpack
|
|
@ -0,0 +1,38 @@
|
|||
# Module 2 Specification
|
||||
|
||||
## Goal
|
||||
|
||||
This module will include its own ethers wasm implementation, so that it connects
|
||||
to the Ethereum blockchain and perform some testing operations. The Goal is to
|
||||
ensure the ethers connector can be decentralized and included in the project code.
|
||||
This module is important to ensure comunication with the smart contracts in a
|
||||
decentralized way.
|
||||
|
||||
## Dependencies
|
||||
- [ ] Module 0
|
||||
- [ ] Module 1
|
||||
|
||||
## ToDo
|
||||
- [ ] Basic understading YEW
|
||||
- [ ] Basic understading Ethers-rs(similar sintax to ethers-web)
|
||||
- [ ] Fork main chain
|
||||
- [ ] Create a base project to interact with DECA Smart Contract
|
||||
- [ ] Create some general access to functions for th DECA Smart Contract
|
||||
|
||||
## Report
|
||||
|
||||
### ethers-web Specification
|
||||
* [Ethers-web library](https://github.com/quay-rs/ethers-web/tree/main)[^1]
|
||||
* [Ethers-rs docs](https://docs.rs/ethers/latest/ethers/index.html)[^2]
|
||||
|
||||
|
||||
## Notes and further developments.
|
||||
|
||||
> Note1: Ethers-rs will be depercated in favor of [alloy](https://github.com/alloy-rs/)[^3] (yet alloy is not
|
||||
production ready).
|
||||
|
||||
## References
|
||||
|
||||
[^1]: https://github.com/quay-rs/ethers-web/tree/main
|
||||
[^2]: https://docs.rs/ethers/latest/ethers/index.html
|
||||
[^3]: https://github.com/alloy-rs/
|
Loading…
Reference in New Issue