A command line tool to set up your Semaphore project and get group data.
Semaphore CLI simplifies the process of setting up Semaphore projects and retrieving on-chain group data, reducing setup time from minutes to seconds. |
---|
To install Semaphore CLI globally:
npm i -g @semaphore-protocol/cli
Alternatively, you can use npx
to run commands without installing the package globally:
npx @semaphore-protocol/cli create my-app
This command sets up a new project in the my-app
directory using the monorepo-ethers
template.
Usage: semaphore [options] [command]
A command line tool to set up your Semaphore project and get group data.
Options:
-v, --version Show Semaphore CLI version.
-h, --help Display this help.
Commands:
create [options] [project-directory] Create a Semaphore project with a supported template.
get-groups [options] Get the list of groups from a supported network (e.g. sepolia or arbitrum).
get-group [options] [group-id] Get the data of a group from a supported network (e.g. sepolia or arbitrum).
get-members [options] [group-id] Get the members of a group from a supported network (e.g. sepolia or arbitrum).
get-proofs [options] [group-id] Get the proofs of a group from a supported network (e.g. sepolia or arbitrum).
help [command] Display help for a specific command.
Semaphore CLI supports multiple Ethereum networks. Use the get-groups
command to interact with groups on networks like Sepolia or Arbitrum.
When creating a new project, you can choose from several templates designed to integrate seamlessly with Semaphore's privacy protocols:
- monorepo-ethers: Hardhat + Next.js + SemaphoreEthers
- monorepo-subgraph: Hardhat + Next.js + SemaphoreSubgraph
- contracts-hardhat: Hardhat only, focused on smart contract development.