{"id":21850510,"url":"https://github.com/circlefin/verite","last_synced_at":"2025-08-20T01:31:26.558Z","repository":{"id":37834531,"uuid":"379999529","full_name":"circlefin/verite","owner":"circlefin","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-02T16:40:32.000Z","size":18995,"stargazers_count":133,"open_issues_count":13,"forks_count":55,"subscribers_count":13,"default_branch":"main","last_synced_at":"2024-04-14T04:06:20.199Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://verite.id","language":"TypeScript","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/circlefin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-06-24T17:14:22.000Z","updated_at":"2024-04-12T05:52:47.000Z","dependencies_parsed_at":"2023-02-15T07:31:37.640Z","dependency_job_id":"44c91927-6ec8-47da-9343-99cacc8dbd2e","html_url":"https://github.com/circlefin/verite","commit_stats":null,"previous_names":["circlefin/verite","centrehq/verite"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circlefin%2Fverite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circlefin%2Fverite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circlefin%2Fverite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circlefin%2Fverite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/circlefin","download_url":"https://codeload.github.com/circlefin/verite/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230382858,"owners_count":18216854,"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-11-28T00:17:54.284Z","updated_at":"2024-12-19T05:07:32.054Z","avatar_url":"https://github.com/circlefin.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Verite\n\nDecentralized Identity for Crypto Finance.\n\nThis repository is a monorepo containing the Core Verite Javascript SDK, documentation, as well as several demos to illustrate issuance, verification, revocation, and real-world use-cases of the Verite standard.\n\n## Getting Started\n\n### Requirements\n\n- Node.js v14\n- npm v7 or greater (`npm i -g npm@7`)\n\n### Project Structure\n\nThis repository is set up as an [npm workspace](https://docs.npmjs.com/cli/v7/using-npm/workspaces) (which requires npm v7 or greater). The dependencies for all packages are installed from the root level using `npm install`.\n\nEach package in this repository lives in the `packages/` directory.\n\nThe primary packages in this repository are:\n\n- [docs](./packages/docs) - Documentation for the Verite\n- [verite](./packages/verite) - The core Javascript SDK for issuing, verifying, and revoking Verifiable Credentials.\n- [contract](./packages/contract) - Two sample ERC20 contracts showcasing how to implement Verite into a smart contract.\n- [solana](./packages/solana) - A sample Solana program demonstrating how to implement Verite into a program.\n- [e2e-demo](./packages/e2e-demo) - A demo walkthrough of the entire Verite project, showcasing issuance, verification, and revocation, with additional demos for DeFi and custodial use cases.\n- [wallet](./packages/wallet) - A demo wallet for storing and submitting credentials. Written in React Native using Expo.\n\nIn addition to the packages above, there are 3 single-purpose demo packages, largely extracted\nfrom the `e2e-demo` package to help clarify each major function of Verite credentials.\n\n- [verite/demo-issuer](./packages/demo-issuer) - A simplified demo of issuing Verifiable Credentials using `verite`.\n- [verite/demo-verifier](./packages/demo-verifier) - A simplified demo of verifying Verifiable Credentials using `verite`.\n- [verite/demo-revocation](./packages/demo-revocation) - A simplified demo of revoking credentials using `verite`.\n\nEach package contains a README file with specific details about how to use the package.\n\n### Development Environment Setup\n\nSetting up a new development environment is accomplished by running the following script:\n\n```sh\nnpm run setup\n```\n\nThis script will do the following:\n\n- Install all dependencies\n- Build the `verite` project\n- Set up the local IP hostname for `e2e-demo` to be used with the wallet.\n- Generate an auth JWT secret for `e2e-demo`\n- Generate issuer and verifier DIDs and secrets for `e2e-demo`\n- Build and migrate the database for `e2e-demo`\n\n## Running the end-to-end Demo\n\nWhen first starting, you will likely be most interested in the `./packages/e2e-demo` package. This package contains several demos and integrates deeply with `verite`.\n\nThis package contains several isolated demos. One of the demos showcases an Ethereum dApp integration, and requires running a local Ethereum node.\n\n### Running a local Ethereum node\n\nRunning an Ethereum node is easily accomplished by using our built-in scripts for running a [HardHat](https://hardhat.org) node.\n\n1. To start a local Ethereum node, simply run:\n\n```sh\nnpm run hardhat:node\n```\n\nNow you have a local Ethereum node running. This process is long-lived and should remain open in it's own terminal tab.\n\n2. Next, you will need to deploy the smart contracts to the local Ethereum network.\n\n```sh\nnpm run hardhat:deploy\n```\n\nAnd finally, you can run the local demos:\n\n```sh\nnpm run dev\n```\n\nThis will start your server at [http://localhost:3000](http://localhost:3000)\n\n### Running the wallet\n\nTo run the wallet, you will need the [Expo Go](https://expo.dev/client) app on your phone.\n\n1. Start the wallet:\n\n   ```sh\n   npm run wallet\n   ```\n\n2. Scan the QR code with your phone.\n\nOn iOS, scan the QR code with your phone's camera.\nOn Android, scan the QR code from within the Expo Go app.\n\n### Manually running services\n\nEach packages in the `./packages` folder has instructions on how to get started\nindependently of other packages. To run a service on it's own, follow the instructions\nin the package's `README.md` file.\n\n**NOTE** It is recommended that you run `npm run clean` before manually running a service.\n\n## Developing\n\nTo run type-checking, linting, and tests, simply run:\n\n```sh\nnpm run check\n```\n\n### Testing\n\nRun tests by running\n\n```sh\nnpm run test\n```\n\n**NOTE** Be sure to have built the `verite` package by running `npm run build:verite`.\n\n### Linting the codebase\n\n```sh\nnpm run lint\n```\n\nor, with autofix:\n\n```sh\nnpm run lint -- --fix\n```\n\n### Run a type check\n\n```sh\nnpm run type-check --workspaces --if-present\n```\n\n### Fixing with Prettier\n\nThis app uses [Prettier](https://prettier.io) to format the code, and you can auto-format all files with\n\n```sh\nnpm run format\n```\n\n## Troubleshooting\n\n### Nonce too high\n\nOccasionally, the local hardhat ethereum node and MetaMask become out of sync. If you see an error stating \"Nonce too high\", you can fix this by:\n\n1. Open MetaMask settings\n2. Click \"Advanced\"\n3. Click \"Reset Account\"\n\n## Contributors\n\n- [Kim Hamilton Duffy](https://github.com/kimdhamilton)\n- [Sean Neville](https://github.com/psnevio) ([Xdotzero](http://xdotzero.com))\n- [Brice Stacey](https://github.com/bricestacey) ([M2 Labs](https://m2.xyz))\n- [Matt Venables](https://github.com/venables) ([M2 Labs](https://m2.xyz))\n- [Justin Hunter](https://github.com/polluterofminds) ([polluterofminds](https://polluterofminds.com))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcirclefin%2Fverite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcirclefin%2Fverite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcirclefin%2Fverite/lists"}