/dPopp

dPopp allows users to prove their identity through a secure, decenteralized UI

Primary LanguageTypeScript

dPopp

Quick Start

Prerequisites: Node (v16 LTS) plus Yarn and Git

  1. Install dPopp (this will install all packages within the dPopp monorepo):
git clone https://github.com/gitcoinco/dPopp.git
npm install --global lerna
lerna bootstrap
  1. Create environment files, and replace environment variables with your own values
cp ./app/.env-example.env ./app/.env
cp ./iam/.env-example.env ./iam/.env
cp ./schemas/.env-example.env ./schemas/.env
  1. Start iam, app, and ceramic services concurrently:
# remember to create .env files first
yarn start

Background Knowledge

  • Know what a wallet is, how to create one, etc.
  • Know what a Verifiable Credential is
  • Know basics of Ceramic Network - interacting with DIDDatastore, Self.ID

Packages

app

The web app allowing users to interact with their dPopp. README

database-client

Contains database connection implementations. Currently supports Ceramic Network. README

iam

The server handling incoming requests to issue credentials and process verifications. README

identity

This is a helper package to compile Spruce DIDKit and export functions for use in iam and app packages.

infra

Holds the Pulumi deployment configuration for this repository. README

schemas

Ceramic schemas and model definitions, and scripts for creating and publishing these to the Ceramic Network. README

types

Shared type definitions. README