Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/webanizer/blockpro
Der herkunftssichere Erzeugungsnachweis für erneuerbare Energie
https://github.com/webanizer/blockpro
2nd-layer bitcoinjs-lib blockchain blockchain-technology crypto ipfs js-ipfs libp2p libp2p-pubsub nodejs p2p-library p2p-network pubsub renewable-energy
Last synced: 12 days ago
JSON representation
Der herkunftssichere Erzeugungsnachweis für erneuerbare Energie
- Host: GitHub
- URL: https://github.com/webanizer/blockpro
- Owner: webanizer
- License: mit
- Created: 2021-08-19T11:53:17.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-11-27T07:07:10.000Z (2 months ago)
- Last Synced: 2025-01-14T12:00:42.902Z (18 days ago)
- Topics: 2nd-layer, bitcoinjs-lib, blockchain, blockchain-technology, crypto, ipfs, js-ipfs, libp2p, libp2p-pubsub, nodejs, p2p-library, p2p-network, pubsub, renewable-energy
- Language: JavaScript
- Homepage: https://www.webanizer.de
- Size: 1.18 MB
- Stars: 3
- Watchers: 2
- Forks: 2
- Open Issues: 32
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
BlockPro
## Table of Contents
- [Background](#background)
- [Install](#install)
- [Usage](#usage)
- [Resources](#resources)
- [Contributing](#contributing)
- [License](#license)## Background
Im Rahmen des BlockPro Projekts wird ein blockchainbasierter Herkunftsnachweis für erneuerbare Energien entwickelt. Transaktionen zwischen Energieerzeuger und Konsumenten werden manipulations- und revisionssicher in der Doichain gespeichert. Bisher wird Grünstrom auf Kontingentbasis verkauft, wohingegen mit BlockPro genaue Daten für den Peer-to-Peer-Handel erfasst werden. So können Jahresspitzenlasten ausgeglichen und Netznutzungsgebühren eingespart werden.
## Get Started
1. git clone this repo
2. run ```npm i``` in root directory
3. run ```docker-compose up``` to start 3 p2plib hosts in the docker environment, an electrumx server and doichain-node only in regtest
4. connect to regtest: ```docker exec -it regtest bash```.
To create a balance run this in container regtest:
```doichain-cli -generate 101```
5. Connect to peer1 ```docker-compose exec peer1 bash```, install: ```npm i -g [email protected]``` and run ```npm run peer1```
6. Connect to peer2 ```docker-compose exec peer1 bash```, install: ```npm i -g [email protected]``` and run ```npm run peer2```
7. Ionnect to peer3 ```docker-compose exec peer3 bash```, install: ```npm i -g [email protected]``` and run ```npm run peer3```
8. In container regtest create a new block to trigger new game for the peers with: ```doichain-cli -generate 1```
9. If needed configure requestInterval in settings.json to change the interval time in seconds in which meter data is collected
10. If encountering electrumx error connecting to (doichain) daemon: In regtest container try: ```doichaind --reindex```## Usage
BlockPro dient dem Herkunfts- und Verbrauchsnachweis von erneuerbarer Energie zwischen Produzenten und Konsumenten (Prosumenten).
Über das Second-Layer Modell werden im Konsens Prosumenten ausgewählt, die die gesammelten Zählerstände aller peers in die Doichain schreiben und hierfür ein Bounty erhalten.
## Resources
1. Serial Port npm package for reading meter data https://www.npmjs.com/package/serialport
2. Bitcoinjs-lib used for doichainjs-lib
https://github.com/bitcoinjs/bitcoinjs-lib
3. p2p lib used in 2nd Layer model
https://github.com/libp2p/js-libp2p## Contributing
Small note: If editing the Readme, please conform to the [![standard-readme compliant](https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/RichardLitt/standard-readme) specification.
## License
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[MIT © 2021 Webanizer AG.](./LICENSE.txt)
[version-shield]: https://img.shields.io/github/package-json/v/webanizer/BlockPro
[version-url]: https://github.com/webanizer/BlockPro/releases
[contributors-shield]: https://img.shields.io/github/contributors/othneildrew/Best-README-Template.svg?style=for-the-badge
[contributors-url]: https://github.com/webanizer/BlockPro/graphs/contributors
[commits-shield]: https://img.shields.io/github/commit-activity/m/webanizer/BlockPro
[commits-url]: https://github.com/webanizer/BlockPro/commits/main
[stars-shield]: https://img.shields.io/github/stars/webanizer/BlockPro?style=social
[stars-url]: https://github.com/webanizer/BlockPro/stargazers
[issues-shield]: https://img.shields.io/github/issues-closed-raw/webanizer/BlockPro
[issues-url]: https://github.com/webanizer/BlockPro/issues
[license-shield]: https://img.shields.io/npm/l/doichain
[license-url]: https://github.com/webanizer/BlockPro/blob/main/LICENSE.txt
[linkedin-shield]: https://img.shields.io/badge/LinkedIn-blue?style=flat&logo=linkedin&labelColor=blue
[linkedin-url]: https://www.linkedin.com/company/webanizer-ag/about/
[youtube-shield]: https://img.shields.io/youtube/channel/views/UChqFCLQ0UfCL9GGgyS0I5oQ?style=social
[youtube-url]: https://www.youtube.com/channel/UChqFCLQ0UfCL9GGgyS0I5oQ
[twitter-shield]: https://img.shields.io/twitter/url?style=social&url=https%3A%2F%2Ftwitter.com%2Fdoichain
[twitter-url]: https://twitter.com/doichain