Traction is a digital wallet solution comprised of plugins layered on top of Hyperledger Aries Cloud Agent Python (ACA-Py) and streamlines the process of sending and receiving digital credentials for governments and organizations.
Its open-source foundation makes it easy to integrate digital trust technology into existing lines of business applications, without having to stand up, maintain and manage an instance of ACA-Py themselves. Future functionality could include machine-readable governance and more.
Establish your own Traction tenant in a B.C. Government sandbox to issue, hold, present, and verify digital credentials using these setup instructions.
Disclaimer: On the 1st and 15th of each month, the entire sandbox gets reset and all your work will be gone.
Running Traction: to run a local instance of traction, see the documentation in scripts.
Deploying Traction: Helm charts for deploying Traction to Kubernetes: charts.
Traction makes it easier to integrate digital trust technology into existing line of business applications.
Traction is an open-source technology project that welcomes collaboration.
If you would like to contribute to Traction, please review the following:
To aid in developers, there are 2 devcontainers
: plugins and tenant-ui.
The devcontainers and associated vscode launch files are for convenience only, they are not mandatory for developing and debugging. Please feel free to develop anyway you choose.
plugins
.services/tenant-ui
plugins
, start up the ACA-Py / Traction instance: Run and Debug view, "Run/Debug Plugin", start/F5services/tenant-ui
, start up the backend api: Run and Debug view, "backend - run dev", start/F5services/tenant-ui
, start up the frontend api: Run and Debug view, "frontend - run dev", start/F5services/tenant-ui
, load a Chrome browser for debugging frontend: Run and Debug view, "frontend - chrome", start/F5If all starts up without a hitch, then you should be able to breakpoint the tenant-ui frontend (Vue/Chrome), tenant-ui backend api (Node.js) and traction plugins (Python) for local debugging.
Out of the box, the above will use the following ports:
Note that Tenant Proxy and Traction DB are started via docker compose when starting ACA-Py/Traction Plugins
Currently authorized users can create a branch and run a pull request to merge in changes. Unauthorized can always create a fork.
git fetch --all
git pull
git rebase origin/main
git push --force
The Province of British Columbia is maintaining Traction as an open-source project.
Maintainer(s):
Traction is licensed under Apache License 2.0 which can be reviewed here.
Connect with others