{"id":14956285,"url":"https://github.com/webanizer/blockpro","last_synced_at":"2025-10-01T17:31:19.175Z","repository":{"id":38347691,"uuid":"397925935","full_name":"webanizer/BlockPro","owner":"webanizer","description":"Der herkunftssichere Erzeugungsnachweis für erneuerbare Energie","archived":false,"fork":false,"pushed_at":"2024-11-27T07:07:10.000Z","size":1239,"stargazers_count":3,"open_issues_count":32,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-14T12:00:42.902Z","etag":null,"topics":["2nd-layer","bitcoinjs-lib","blockchain","blockchain-technology","crypto","ipfs","js-ipfs","libp2p","libp2p-pubsub","nodejs","p2p-library","p2p-network","pubsub","renewable-energy"],"latest_commit_sha":null,"homepage":"https://www.webanizer.de","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/webanizer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-19T11:53:17.000Z","updated_at":"2023-07-23T14:27:16.000Z","dependencies_parsed_at":"2024-02-12T04:31:43.493Z","dependency_job_id":"4cd3c7d2-d7dc-4bbb-b26a-db6c92692062","html_url":"https://github.com/webanizer/BlockPro","commit_stats":{"total_commits":149,"total_committers":2,"mean_commits":74.5,"dds":"0.24161073825503354","last_synced_commit":"e6fc20cea00ba51475511089685952096db5f501"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webanizer%2FBlockPro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webanizer%2FBlockPro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webanizer%2FBlockPro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webanizer%2FBlockPro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/webanizer","download_url":"https://codeload.github.com/webanizer/BlockPro/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234883233,"owners_count":18901366,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2nd-layer","bitcoinjs-lib","blockchain","blockchain-technology","crypto","ipfs","js-ipfs","libp2p","libp2p-pubsub","nodejs","p2p-library","p2p-network","pubsub","renewable-energy"],"created_at":"2024-09-24T13:12:38.903Z","updated_at":"2025-10-01T17:31:13.822Z","avatar_url":"https://github.com/webanizer.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003ch1 align=\"center\"\u003eBlockPro\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg \n  src=\"./images/Consolinno.png\"\n  raw=true \n  style=\"height:200px\"\n  /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e \n  \u003ca href=\"https://github.com/webanizer/BlockPro/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/package-json/v/webanizer/BlockPro\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.linkedin.com/company/webanizer-ag/about/\"\u003e\u003cimg src=\"https://img.shields.io/badge/LinkedIn-blue?style=flat\u0026logo=linkedin\u0026labelColor=blue\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/webanizer/BlockPro/issues\"\u003e\u003cimg src=\"https://img.shields.io/github/issues-closed-raw/webanizer/BlockPro\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.youtube.com/channel/UChqFCLQ0UfCL9GGgyS0I5oQ\"\u003e\u003cimg src=\"https://img.shields.io/youtube/channel/views/UChqFCLQ0UfCL9GGgyS0I5oQ?style=social\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/webanizer/BlockPro/blob/main/LICENSE.txt\"\u003e\u003cimg src=\"https://img.shields.io/npm/l/doichain\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n## Table of Contents\n- [Background](#background)\n- [Install](#install)\n- [Usage](#usage)\n- [Resources](#resources)\n- [Contributing](#contributing)\n- [License](#license)\n\n## Background\n\nIm 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. \n\n## Get Started\n1. git clone this repo \n2. run ```npm i``` in root directory\n3. run ```docker-compose up``` to start 3 p2plib hosts in the docker environment, an electrumx server and doichain-node only in regtest\n4. connect to regtest: ```docker exec -it regtest bash```.\n   To create a balance run this in container regtest:\n   ```doichain-cli -generate 101```\n5. Connect to peer1 ```docker-compose exec peer1 bash```, install: ```npm i -g npm@6.10``` and run ```npm run peer1```\n6. Connect to peer2 ```docker-compose exec peer1 bash```, install: ```npm i -g npm@6.10``` and run ```npm run peer2```\n7. Ionnect to peer3 ```docker-compose exec peer3 bash```, install: ```npm i -g npm@6.10``` and run ```npm run peer3```\n8. In container regtest create a new block to trigger new game for the peers with: ```doichain-cli -generate 1```\n9. If needed configure requestInterval in settings.json to change the interval time in seconds in which meter data is collected \n10. If encountering electrumx error connecting to (doichain) daemon: In regtest container try: ```doichaind --reindex```\n\n## Usage \n\nBlockPro dient dem Herkunfts- und Verbrauchsnachweis von erneuerbarer Energie zwischen Produzenten und Konsumenten (Prosumenten).\nÜ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. \n\n\u003cp align=\"center\"\u003e\n  \u003cimg\n  src=\"./images/Activity Diagram Libp2p.jpg\"\n  raw=true\n  alt=\"Aktivitätsdiagramm zum Peer2Peer Demoprotokoll\"\n  style=\"margin-right: 10px; width: 600px\"\n  /\u003e\n\u003c/p\u003e\n\n\n## Resources\n1. Serial Port npm package for reading meter data https://www.npmjs.com/package/serialport\n2. Bitcoinjs-lib used for doichainjs-lib\n   https://github.com/bitcoinjs/bitcoinjs-lib \n3. p2p lib used in 2nd Layer model \n   https://github.com/libp2p/js-libp2p\n\n## Contributing\n\n\u003ca href=\"https://github.com/webanizer/BlockPro/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=webanizer/BlockPro\" /\u003e\n\u003c/a\u003e\n\n\nSmall 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.\n\n## License\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n[MIT © 2021 Webanizer AG.](./LICENSE.txt)\n\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n\u003c!-- https://www.markdownguide.org/basic-syntax/#reference-style-links --\u003e\n[version-shield]: https://img.shields.io/github/package-json/v/webanizer/BlockPro\n[version-url]: https://github.com/webanizer/BlockPro/releases\n[contributors-shield]: https://img.shields.io/github/contributors/othneildrew/Best-README-Template.svg?style=for-the-badge\n[contributors-url]: https://github.com/webanizer/BlockPro/graphs/contributors\n[commits-shield]: https://img.shields.io/github/commit-activity/m/webanizer/BlockPro\n[commits-url]: https://github.com/webanizer/BlockPro/commits/main\n[stars-shield]: https://img.shields.io/github/stars/webanizer/BlockPro?style=social\n[stars-url]: https://github.com/webanizer/BlockPro/stargazers\n[issues-shield]: https://img.shields.io/github/issues-closed-raw/webanizer/BlockPro\n[issues-url]: https://github.com/webanizer/BlockPro/issues\n[license-shield]: https://img.shields.io/npm/l/doichain\n[license-url]: https://github.com/webanizer/BlockPro/blob/main/LICENSE.txt\n[linkedin-shield]: https://img.shields.io/badge/LinkedIn-blue?style=flat\u0026logo=linkedin\u0026labelColor=blue\n[linkedin-url]: https://www.linkedin.com/company/webanizer-ag/about/\n[youtube-shield]: https://img.shields.io/youtube/channel/views/UChqFCLQ0UfCL9GGgyS0I5oQ?style=social\n[youtube-url]: https://www.youtube.com/channel/UChqFCLQ0UfCL9GGgyS0I5oQ\n[twitter-shield]: https://img.shields.io/twitter/url?style=social\u0026url=https%3A%2F%2Ftwitter.com%2Fdoichain\n[twitter-url]: https://twitter.com/doichain\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebanizer%2Fblockpro","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebanizer%2Fblockpro","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebanizer%2Fblockpro/lists"}