{"id":23916934,"url":"https://github.com/lukebaal/cloudproject","last_synced_at":"2025-04-11T18:11:41.183Z","repository":{"id":60772395,"uuid":"177347384","full_name":"LukeBaal/CloudProject","owner":"LukeBaal","description":null,"archived":false,"fork":false,"pushed_at":"2019-04-10T01:23:09.000Z","size":1207,"stargazers_count":2,"open_issues_count":0,"forks_count":3,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-03-25T14:11:12.465Z","etag":null,"topics":["blockchain","consent-management","cryptography","hyperledger","privacy-by-design","user-privacy"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LukeBaal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-03-23T22:41:20.000Z","updated_at":"2022-10-04T10:56:48.000Z","dependencies_parsed_at":"2022-10-04T15:14:52.368Z","dependency_job_id":null,"html_url":"https://github.com/LukeBaal/CloudProject","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeBaal%2FCloudProject","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeBaal%2FCloudProject/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeBaal%2FCloudProject/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeBaal%2FCloudProject/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LukeBaal","download_url":"https://codeload.github.com/LukeBaal/CloudProject/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248456366,"owners_count":21106603,"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":["blockchain","consent-management","cryptography","hyperledger","privacy-by-design","user-privacy"],"created_at":"2025-01-05T12:15:13.916Z","updated_at":"2025-04-11T18:11:41.162Z","avatar_url":"https://github.com/LukeBaal.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cloud Project\n\nConcensus Management using a Hyperledger Fabric blockchain\n\n## Dependencies\n\n- Docker\n- Docker-compose\n- Node 8.x\n\nNOTE: MUST be Node 8.x to work with hyperledger. NVM (Node version manager) can be used to allow use of Node 8.x if a different version of node is already installed.\n\nMac/Linux may be required to run the scripts included with hyperledger, although it is possible Git Bash may allow for running on Windows\n\n## Install\n\n```\ngit clone https://github.com/lukebaal/CloudProject.git\n```\n\n### Hyperledger Composer CLI Dependencies\n\n```\nnpm install -g composer-cli composer-rest-server\n```\n\n### Generate Admin Credentials\n\n```\ncd hyperledger\n./createPeerAdminCard.sh\n```\n\n### Compile hyperledger network\n\n```\ncd consensus-network\ncomposer archive create -t dir -n .\n```\n\n### Install backend/frontend dependencies and build frontend\n\nNOTE: The `cd` command below assumes you are in `hyperledger/consensus-network` directory from previous steps\n\n```\ncd ../../\nnpm --prefix ./backend install\nnpm --prefix ./frontend install\nnpm --prefix ./frontend run build\n```\n\nThis will install the dependencies for the backend/frontend and build the frontend\n\n## Run\n\nIn one terminal\n\n```\n./startup.sh\n```\n\nThis will startup the Hyperledger network and start the Composer REST API\n\nIn another terminal\n\n```\ndocker-compose up\n```\n\nThis will start the database container\n\nIn another terminal\n\n```\ncd backend\nNODE_ENV=production npm start\n```\n\nThis will start the backend in production, which serves the frontend\n\nNavigate to `localhost:5000` in a browser to access the application\n\n## Troubleshooting\n\n### Hyperledger\n\nIf issues using hyperledger, refer to the documentation.\n\nHyperledger Fabric:\nhttps://hyperledger-fabric.readthedocs.io/en/latest/\n\nHyperledger Composer:\nhttps://hyperledger.github.io/composer/latest/installing/installing-index.html\n\n### Composer API\n\nIf actions such as users adding/editting permissions or companies adding their info are hanging (Button says \"Sending....\"), then it is likely an issue with the Composer REST API. More specifically, it seems the GRPC connection timesout if the network is running long enough without any requests.\n\nSolution: run `startup.sh` again to restart the network.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukebaal%2Fcloudproject","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flukebaal%2Fcloudproject","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukebaal%2Fcloudproject/lists"}