{"id":13613439,"url":"https://github.com/Pop-Code/composer-wallet-s3","last_synced_at":"2025-04-13T15:33:12.124Z","repository":{"id":57204974,"uuid":"124297183","full_name":"Pop-Code/composer-wallet-s3","owner":"Pop-Code","description":"Amazon s3 implementaion of the hyperledger composer wallet","archived":true,"fork":false,"pushed_at":"2018-03-07T22:36:51.000Z","size":69,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-15T09:32:40.210Z","etag":null,"topics":[],"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/Pop-Code.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":"2018-03-07T21:33:14.000Z","updated_at":"2023-01-28T18:59:17.000Z","dependencies_parsed_at":"2022-09-18T01:32:18.532Z","dependency_job_id":null,"html_url":"https://github.com/Pop-Code/composer-wallet-s3","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pop-Code%2Fcomposer-wallet-s3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pop-Code%2Fcomposer-wallet-s3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pop-Code%2Fcomposer-wallet-s3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pop-Code%2Fcomposer-wallet-s3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Pop-Code","download_url":"https://codeload.github.com/Pop-Code/composer-wallet-s3/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248736192,"owners_count":21153548,"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":[],"created_at":"2024-08-01T20:00:46.989Z","updated_at":"2025-04-13T15:33:11.778Z","avatar_url":"https://github.com/Pop-Code.png","language":"JavaScript","funding_links":[],"categories":["Composer Wallet Implementations"],"sub_categories":["Cloud Deployments"],"readme":"# composer-wallet-s3\n\nThis is Hyperledger Composer Wallet implementation using the [Amazon s3](https://aws.amazon.com/fr/s3/) as a store.\n\n## Usage\n\nThe steps below assume that you have an application or playground, or rest server for Hyperledger Composer that wish to use.\nAlso it assumes you are familar with NPM, and the card concept in the Composer\n\n\n### *Step 1*\n\n- Signup for a Amazon web service account\n- Create a S3 bucket \n- Go to IAM service and [create an identity credentials](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console) and grant access to your bucket\n- Once the credential has been created, view it and save it away for later use when configuring Composer.\n\nYou will need then to keep a copy of the credentials. You will need to expose your credentials to the config, or via the environement variabe AWS_PROFILE\n\n### *Step 2*\n\nFirstly, this module that provides the support to connect from Composer to the Object Storage needs to be installed.\nThis is loaded using a node.js require statment, and the current preview will look for this in the global modules. \n\n```\nnpm install -g composer-wallet-s3\n```\nOr using yarn\n```\nyarn global add composer-wallet-s3\n```\n\n### *Step 3*\n\nConfiguration needs to be passed to the client appliation using composer to use this new wallet.\n\nThere are two main ways this can be achieved. Via configuration file, or via environment variables. \n\n*File*\nAssuming that you do not have the config directory already - this is using the standard node npm `config` module\n\n\n- Create a directory `config` in the current working directory of the application\n- Create a file `default.json` in this `config` directory\n- Ensure that the contents of the file are\n```\n{\n  \"composer\": {\n    \"wallet\": {\n      \"type\": \"composer-wallet-s3\",\n      \"desc\": \"Uses the AWS s3 object Store\",\n      \"options\": {\n        \"bucketName\": \"my-bucket-name\"\n        \"s3Options\": {} //Optional, you can pass a full configuration to connect to the s3 api OR use the env variable AWS_PROFILE \n      }\n    }\n  }\n}\n```\n\n- `type` is the name of this module\n- `desc` is some text for the humans\n- `options.bucketName` is the buckName you created\n- `options.s3Options` is the config you want to use to set/override your default AWS_PROFILE\n\n*Environment Variable*\n\nAs this is using the *config* module specifing the details on the command line via environment variables can be achieved by\n\n```\nexport NODE_CONFIG='{\"composer\":{\"wallet\":{\"type\":\"composer-wallet-s3\",\"options\":{\"bucketName\":\"my-bucket-name\"}}}}'\n```\n\nThen any application (or command line, eg `composer card list`) that is in this shell will use the cloud wallets.\n\n### Run tests\nTo run tests, you must have an aws credentials profile configured on your computer and set the env variable AWS_PROFILE\n```\nAWS_PROFILE=myprofile npm test\n```\nOr using yarn\n```\nAWS_PROFILE=myprofile yarn test\n```\n\n### Build from source\n\n````\n#clone this repository\ngit clone https://github.com/Pop-Code/composer-wallet-s3.git\n#go to the directory\ncd composer-wallet-s3\n#build\nnpm run build\n````\nSources will build in the ./build directory.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPop-Code%2Fcomposer-wallet-s3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FPop-Code%2Fcomposer-wallet-s3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPop-Code%2Fcomposer-wallet-s3/lists"}