DAOTask/module2/module2.md

106 lines
2.7 KiB
Markdown
Raw Permalink Normal View History

2024-03-13 02:47:22 +00:00
# Module 2 Specification
## Goal
This module is the presentation and aplication layers it comprise the whole
development toolset and technologies that DECA will use for its dapps
development (CI/CD, Helia, OrbitDB, Ethers, frameworks, and others) the goal is
to have a decentralizable base architecture.
## Dependencies
- [x] Module 1
## Subprojects
2024-04-16 20:30:16 +00:00
- [ ] Lume R&D
- [ ] Lit R&D
2024-03-13 02:47:22 +00:00
- [ ] HELIA R&D
- [ ] OrbitDB R&D
2024-04-16 20:30:16 +00:00
- [ ] WASM R&D
2024-03-13 02:47:22 +00:00
- [ ] Decentralizable Assets Bundler
- [ ] Ethers R&D
- [ ] Dapp Indexer D&T
- [ ] Final DAPP Framework
2024-04-16 20:30:16 +00:00
> Where:
> R: Research
> D: Develop
> T: Test
## Development Reports and Repositories
### Lume R&D
- [ ] Deno + lume
### Lit R&D
- [ ] Lit Compositor
2024-03-13 02:47:22 +00:00
### HELIA R&D
The usage of Helia for the dapp will ensure that web clients become their own
dapp node instance which will share assets and thus network speed and further
decentralization.
* [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]
2024-04-16 20:30:16 +00:00
#### Libp2p
2024-03-13 02:47:22 +00:00
2024-04-16 20:30:16 +00:00
Helia now requires libp2p for handling the peers, and networking
thus it is important to have some references and tests.
2024-03-13 02:47:22 +00:00
### OrbitDB R&D
2024-04-16 20:30:16 +00:00
### WASM
- [ ] Ethereum Markets tracker wasm
2024-03-13 02:47:22 +00:00
### Decentralizable Assets Bundler
### Ethers R&D
ethers connects to the Ethereum blockchain and perform some verification operations.
This module is important to ensure frontend/assets decentralization and
decentralized comunication with the smart contracts.
#### Ethers-js
#### Ethers-rs
#### Ethers-web
### Dapp Indexer D&T:
> CID Hashing paradox
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
paradox 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
Using SmartContract assets indexer: 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.
All the assets should be integrated in the dapp indexer so that it provides
blockchain security to the dapp and the helia instance and it does not depends
on centralized systems.
### Final DAPP Framework
## 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