Mobile Wallet demo at https://c19.cards
- Click "Connect to Lab and get tested" to retrieve a VC
- Review details (URLs, DIDs, keys, etc) in Dev Tools
- Menu > "Scan QR Code" to share your VC with a verifier (e.g., the Verifier demo below)
Verifier demo at https://c19.cards/venue
- OpenID Request QR code is displayed automatically
- Review details (URLs, DIDs, keys, etc) in Dev Tools
- Scan the barcode from your Mobile Wallet to share your VC (e.g., the Mobile Wallet demo above)
Lab demo at https://c19.cards/api/fhir
- Connect your own Mobile Wallet to this demo lab interface
- Supports SMART on FHIR discovery protocol (https://c19.cards/api/fhir/.well-known/smart-configuration)
- No UI provided -- just an automatic "sign-in" workflow that redirects back to your Mobile Wallet
This demo should work with Node.js 15 (current LTS) as well as Node.js 13. See Dockerfile for details if you want to build/develop locally using docker; otherwise, you can get started with:
git clone https://github.com/smart-on-fhir/health-cards-tests
cd health-cards-tests
# In first terminal
export SERVER_BASE=http://localhost:8080/api
npm run dev-ui # Terminal 1
# In second terminal
export SERVER_BASE=http://localhost:8080/api
npm run dev # Terminal 2
npm run build-ui
npm run build
export SERVER_BASE=http://localhost:8080/api
npm run dev
docker build -t health-wallet-demo .
docker run --rm -it --env SERVER_BASE=http://localhost:8080/api -p 8080:8080 health-wallet-demo
export USER=$(id -u)
docker-compose --env-file ./compose.env up
You can use the docker-compose.yaml file to spin up two dev containers with watchers, one for the UI and one for the server.
- Both containers have their
srcdirectories bind-mounted to the local directory'ssrcfolder. Any changes made in thedevcontainer (or the host) will propagate to both containers + host and be registered by the watchers. This is helpful since you can, for instance, launch programs inside thedevcontainer and utilize dev dependencies without needing to ever install them locally. - Both containers have their
distfolders mounted to a named volume. This means the parcel watcher in thedev-uicontainer can write changes that are accessible by thedevcontainer. Note thedev-uicontainer needsrootprivileges for this. See this issue for details. - The
dev-uicontainer hasrootprivileges, but it has been given read-only access to thesrcfolder. Any changes tosrcmade from within this container will not be seen by the host ordevcontainer.
See testing-endpoints.md for details.
The demo folder constains a project for test portals illustrating the issuance and validation of SMART Health Cards; see its README.md for details.