From 19048bde69af7f167af63713bf96f43b985533a2 Mon Sep 17 00:00:00 2001 From: Marc-Aurele Besner <82244926+marc-aurele-besner@users.noreply.github.com> Date: Tue, 7 May 2024 09:40:25 -0400 Subject: [PATCH 1/4] improve readme using chatGPT --- README.md | 106 ++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 76 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 729f56e..4f6fe52 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,78 @@ # DIDComm Browser Demo -The [DIDComm Browser Demo][demo] contains a fully functioning DIDComm v2 -application, capable of both sending and receiving DIDComm messages through a -DIDComm v2 capable mediator. The purpose of the [DIDComm Demo][demo] is to help -people understand the basics of [DID Communication][didcomm] without burdening -them with all the complexities of optional protocols, such as those pertaining -to verifiable credentials. With this in mind, only the following DIDComm -protocols have been implemented: - -Protocols pertaining to mediation: -- https://didcomm.org/coordinate-mediation/3.0/ -- https://didcomm.org/messagepickup/3.0/ - -Core Protocols: -- https://didcomm.org/routing/2.0/ (via the [didcomm][didcommts] typescript library) -- https://didcomm.org/discover-features/2.0/ -- https://didcomm.org/trust-ping/2.0/ - -Protocols implemented to make the demo be easier to use: -- https://didcomm.org/basicmessage/2.0/ -- https://didcomm.org/user-profile/1.0/ - -Along with the above protocols, `only did:peer:2` DIDs are supported at this -time. The [DIDComm Demo][demo] creates a new `did:peer:2` DID upon page load -and connects to a mediator (via the mediator's `did:peer:2` DID) to negotiate -mediation. Once the negotiation has completed, the demo's DID will appear at -the top of the screen. - -[demo]: https://demo.didcomm.org -[didcomm]: https://didcomm.org -[didcommts]: https://www.npmjs.com/package/didcomm +## Overview + +The [DIDComm Browser Demo](https://demo.didcomm.org) showcases a fully functioning DIDComm v2 application capable of both sending and receiving messages through a DIDComm v2 capable mediator. The primary goal of the demo is to simplify the understanding of [DID Communication](https://didcomm.org) (DIDComm) principles by implementing only essential protocols. + +### Supported Protocols + +**Mediation Protocols:** + +- [Coordinate Mediation 3.0](https://didcomm.org/coordinate-mediation/3.0/) +- [Message Pickup 3.0](https://didcomm.org/messagepickup/3.0/) + +**Core Protocols:** + +- [Routing 2.0](https://didcomm.org/routing/2.0/) (via the [didcomm TypeScript library](https://www.npmjs.com/package/didcomm)) +- [Discover Features 2.0](https://didcomm.org/discover-features/2.0/) +- [Trust Ping 2.0](https://didcomm.org/trust-ping/2.0/) + +**Utility Protocols for Enhanced Usability:** + +- [Basic Message 2.0](https://didcomm.org/basicmessage/2.0/) +- [User Profile 1.0](https://didcomm.org/user-profile/1.0/) + +**DID Support:** +Currently, only `did:peer:2` DIDs are supported. Upon page load, a new `did:peer:2` DID is generated, which connects to a mediator to negotiate mediation. + +## Getting Started + +### Prerequisites + +Before you can run or build the DIDComm Browser Demo, ensure you have the following installed: + +- [Node.js](https://nodejs.org/) (LTS version recommended) +- [npm](https://www.npmjs.com/) (comes with Node.js) or [Yarn](https://yarnpkg.com/) + +### Installation + +Clone the repository and install the dependencies: + +`git clone https://github.com/decentralized-identity/didcomm-demo.git` +`cd didcomm-demo` +`npm install` # Or use `yarn install` if you prefer yarn over npm + +### Running the Application + +To run the application locally: + +`npm start` # Or `yarn start` + +This command starts a local development server. Open http://localhost:8080 in your browser to view the application. + +### Building the Application + +To build the application for production: + +`npm run build` # Or `yarn build` + +This will bundle the application into static files in the `dist/` directory. + +### Formatting Code + +To format the TypeScript files in the `src/` directory: + +`npm run format` # Or `yarn format` + +## Contributing + +Contributions to the DIDComm Browser Demo are welcome! Here are a few ways you can help: + +- Report issues and suggest features in the [Issues](https://github.com/decentralized-identity/didcomm-demo/issues) section of the repository. +- Submit pull requests with bug fixes and new features. + +Please read [CONTRIBUTING.md](https://github.com/decentralized-identity/didcomm-demo/CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests. + +## License + +This project is licensed under the ISC License - see the [LICENSE](https://github.com/decentralized-identity/didcomm-demo/blob/main/LICENSE) file for details. From dd0f2898e24d371670fb46e8e78f13ce3c3f9f31 Mon Sep 17 00:00:00 2001 From: Marc-Aurele Besner <82244926+marc-aurele-besner@users.noreply.github.com> Date: Tue, 7 May 2024 09:40:34 -0400 Subject: [PATCH 2/4] add contributing.md --- CONTRIBUTING.md | 58 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..24ed455 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,58 @@ +# Contributing to DIDComm Browser Demo + +We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's: + +- Reporting a bug +- Discussing the current state of the code +- Submitting a fix +- Proposing new features +- Becoming a maintainer + +## We Develop with GitHub + +We use GitHub to host code, to track issues and feature requests, as well as accept pull requests. + +## We Use [GitHub Flow](https://guides.github.com/introduction/flow/index.html), So All Code Changes Happen Through Pull Requests + +Pull requests are the best way to propose changes to the codebase (we use [GitHub Flow](https://guides.github.com/introduction/flow/index.html)). We actively welcome your pull requests: + +1. Fork the repo and create your branch from `main`. +2. If you've added code that should be tested, add tests. +3. Ensure the test suite passes. +4. Make sure your code lints. +5. Issue that pull request! + +## Any contributions you make will be under the ISC Software License + +In short, when you submit code changes, your submissions are understood to be under the same [ISC License](https://github.com/decentralized-identity/didcomm-demo/blob/main/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. + +## Report bugs using Github's [issues](https://github.com/decentralized-identity/didcomm-demo/issues) + +We use GitHub issues to track public bugs. Report a bug by [opening a new issue](https://github.com/decentralized-identity/didcomm-demo/issues/new); it's that easy! + +## Write bug reports with detail, background, and sample code + +**Great Bug Reports** tend to have: + +- A quick summary and/or background +- Steps to reproduce + - Be specific! + - Give sample code if you can. +- What you expected would happen +- What actually happens +- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work) + +People *love* thorough bug reports. I'm not even kidding. + +## Use a Consistent Coding Style + +- You can use `npm run format` to ensure your code conforms to our set style. +- Documentation updates are also welcome. + +## License + +By contributing, you agree that your contributions will be licensed under its ISC License. + +## References + +This document was adapted from the open-source contribution guidelines for [Facebook's Draft](https://github.com/facebook/draft-js/blob/master/CONTRIBUTING.md). From c9a26bf074cb9cba853e0cbe143e998052da0a5e Mon Sep 17 00:00:00 2001 From: Marc-Aurele Besner <82244926+marc-aurele-besner@users.noreply.github.com> Date: Tue, 7 May 2024 09:40:53 -0400 Subject: [PATCH 3/4] improve package.json --- package.json | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 6c74a12..5f17b16 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "didcomm-demo", "version": "1.0.0", - "description": "", + "description": "A browser-based demonstration of DIDComm v2 messaging, showcasing simple and advanced protocols for decentralized identity communication.", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", @@ -9,9 +9,24 @@ "build": "webpack build", "format": "prettier --write \"src/**/*.ts\"" }, - "keywords": [], - "author": "", - "license": "ISC", + "repository": { + "type": "git", + "url": "https://github.com/decentralized-identity/didcomm-demo.git" + }, + "keywords": [ + "DIDComm", + "decentralized identity", + "identity", + "communication", + "DID", + "messaging" + ], + "author": "Decentralized Identity Foundation", + "license": "MIT", + "homepage": "https://demo.didcomm.org", + "bugs": { + "url": "https://github.com/decentralized-identity/didcomm-demo/issues" + }, "dependencies": { "@noble/curves": "^1.2.0", "didcomm": "^0.4.1", From 49a12674e266755afde97b17826c83c721d5cf47 Mon Sep 17 00:00:00 2001 From: Marc-Aurele Besner <82244926+marc-aurele-besner@users.noreply.github.com> Date: Tue, 7 May 2024 09:43:40 -0400 Subject: [PATCH 4/4] Align all license to MIT --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4f6fe52..412917c 100644 --- a/README.md +++ b/README.md @@ -75,4 +75,4 @@ Please read [CONTRIBUTING.md](https://github.com/decentralized-identity/didcomm- ## License -This project is licensed under the ISC License - see the [LICENSE](https://github.com/decentralized-identity/didcomm-demo/blob/main/LICENSE) file for details. +This project is licensed under the MIT License - see the [LICENSE](https://github.com/decentralized-identity/didcomm-demo/blob/main/LICENSE) file for details.