Exporting a Client Side Prover
Going from AxiomREPL to your app
Circuit Export
When you select the Export > Export TypeScript circuit option in AxiomREPL, a circuit.ts
file will be downloaded with all the artifacts specific to your circuit that are required to run the circuit inside your own application. Namely, circuit.ts
includes: the circuit size and configuration, default circuit inputs and their types, the circuit verification key, and your circuit code. This is all exported as a singular circuit
object.
To add this into a React app, first install @axiom-crypto/react
using a package manager such as npm
/yarn
/pnpm
.
AxiomCircuitProvider
In order to use this in your Next.js 13 app, you'll need to wrap AxiomCircuitProvider
in its own file to ensure that it's only mounted once:
and in your layout file:
useAxiomCircuit
Then you can use the useAxiomCircuit
hook to get built queries inside your application:
Hook functionality
The following functions and variables are available from the useAxiomCircuit
hook:
axiom
The Axiom
instance variable. Exposes useful things like the AxiomV2Query
contract address and ABI.
setParams
Function to set the inputs
and callback
.
areParamsSet
Boolean that returns true
if inputs
and callback
are set, or false
otherwise.
build
Async function to build the inputs
and callback
along with the provided circuit into a Query
to be sent to AxiomV2Query
.
builtQuery
The full builtQuery
variable that contains all inputs required for calling sendQuery
on AxiomV2Query
.
payment
Variable that gives the calculated payment amount for the Query
.
reset
Function to reset the inputs
and callback
variables.
Last updated