RIF Self-sovereign identity UI library.
User interface packages and applications enabling RIF Self-sovereign identity models.
This repo contains UI libraries and applications
- RIF theme
- RIF Identity languages
- Issuer's app: it opens a request credential service that enables Holder's app user to request for different credentials
- Holder's app: it requests credentials to the issuer's open service and stores them in the RIF Data vault. It allows to perform credential presentations using QR codes
- Verifier's app: allows to scan Holder's app presented QRs and verify W3C compliance and that the issuer's app is the credential issuer
This app is designed to work with RIF identity services. First of all you will need to get all this services running, follow the repository's README. Then, before starting any app, install global dependencies and app specific dependencies.
yarn
yarn lerna bootstrap
If you add/remove a dependency from any folder inside
./apps
or./packages
, please install (or re-install) the dependencies withyarn lerna bootstrap
.
This is a react native app, you will first need to set up React Native environment.
This app is a use case for a citizen that holds credentials such us a national ID or a driver license. It uses RIF Identity services and RIF Identity Javascript library1 to enable W3C-compatible SSI features.
Configure the app, complete the .env
file:
ISSUER_NAME= the issuer's name, to show in the UI
ISSUER_ENDPOINT= the issuer's https endpoint for credentials requests
TINYQR_ENDPOINT= the tiny-qr service endpoint to enable tiny-qrs
To start Holder's App (metro bundler)
cd apps/IdentityApp
yarn start
Then run yarn ios
23 or yarn android
.
This is also a React Native app. Use the same setup explained in Holder's app.
To start Verifier's App (metro bundler)
cd apps/W3CVerifier
yarn start
Then run yarn ios
2 or yarn android
.
The holder's app and the verifier's app have some thing in common that might be code-duplicated or not imported from packages:
- Custom logger
- Styles
- IdentityApp/Libraries
- LoadingComponent
- Secure storage provider
- Language files
- SSI Library is a WIP
- Run
cd ios && pod install
first - iOS support is a WIP