Developer Resources
The POD and GPC libraries are available for JavaScript/TypeScript developers. Start by looking at the tutorial code here, then you can take a look at the specific packages listed below.
All code is open-source and available in the Zupass repo. Detailed documentation is at docs.pcd.team. We hope you’ll give them a try and tell us what you think.
@pcd/gpc
Links: NPM, tutorial, docs, code
Allows creation of GPC proofs using high-level configuration. The config compiler picks the right ZK circuit, and generates the circuit inputs to prove or verify as needed.
@pcd/proto-pod-pcd-artifacts
Links: NPM, tutorial, docs, code
This package contains the binary artifacts (proving and verification keys, witness generators) needed for GPC proofs in the initial proto-pod-gpc
family. These are large, but you’ll only need a few of them, not the whole package. Read more information about how to use tehse artifacts here.
@pcd/gpcircuits
Contains the modular ZK circuits used to generate GPC proofs. You don’t need to look at this code to use GPCs, but you can use this code as the basis of your own ZK circuits using PODs, or to enable on-chain verifiaction.
@pcd/gpc-pcd
Links: NPM, tutorial, docs, code
Allows GPC proofs to be generated about PODs in your Zupass. A GPCPCD is developer/hacker friendly, displaying the proof configuration and POD values directly. Most apps don’t need to interact directly with GPCPCDs, but should instead prefer to use the Z API.