Getting Started

Installing and running ZK-eSIM

1. Clone the Repository

Start by downloading the project from GitHub:

git clone https://github.com/ZkSIM/zk-esim.git
cd zk-esim

This will give you the full project structure, including the server, client, ZK circuits, and examples.

2. Install Dependencies

Both the server and client run on Node.js. Install all required packages:

Server

cd server
npm install

Client

cd ../client
npm install|

The installation will include:

  • cryptographic libraries for proof generation

  • TypeScript tooling

  • development servers

  • utility packages used by the simulator

3. Start the Server & Client

You’ll need to run both services.

Start the backend server

cd server
npm run start

This launches the ZK verification backend on http://localhost:5000

Start the client application

cd ../client
npm run start

This launches the eSIM simulator UI on http://localhost:3000

4. Open the Web App

Once both services are running, open your browser and visit:

Inside the simulator you can:

  • Generate a pseudonymous eSIM identity

  • Create a zero-knowledge authentication proof

  • Send the proof to the server and verify it

  • Test subscription validation and activation

  • Experiment with marketplace and Web3 logic if enabled

This UI is your full development playground for understanding how ZK-based eSIM authentication works.

Last updated