sismo-core / sismo-hub

MIT License
962 stars 204 forks source link


Logo

Sismo Hub

Made by Sismo


What is Sismo?

Sismo leverages zero-knowledge proofs (ZKPs) and privacy-preserving technologies to enable users to aggregate and selectively disclose personal data to applications.

check out the docs here.

Sismo Hub

The Sismo Hub is the repository for integrations on Sismo, where you can create:


If you want to contribute to Sismo Hub, check out the Contributing Guide here.


On top of Groups, you can create:

While the apps are independent of the Sismo Hub, the ZK Badges are built on it, through the Factory. Here is a tutorial to build your own ZK Badge from the factory in 5 minutes: https://docs.sismo.io/sismo-docs/tutorials/create-your-zk-badge-in-5-minutes-factory

That's why you can still also create a ZK Badge, edit its metadata, or add a custom flow directly through the Sismo Hub.


The Sismo Hub is powered by an off-chain infrastructure that:

Architecture

Here are the 2 main folders you will use when you want to contribute to the Sismo Hub:

And here are the other folders more related to ZK Badges:

Usage

Installation

yarn

Generate a Group in local

yarn generate-group <name-of-the-data-group>

# if you want to add additional data sources to your group
yarn generate-group local-group --additional-data 0x123...def

Make sure the data group exists. More details at Sismo Hub Group Generator.

Setup the API in local

yarn api:watch

You can go to http://localhost:8000/static/rapidoc/index.html to see the main endpoints of the Sismo Hub API

To access the Group data, go to: http://localhost:8000/file-store/group-snapshots-data/{groupId}/{timestamp}.json

To access the Group metadata, go to: http://localhost:8000/groups/{groupId}?timestamp={timestamp}

Setup Data Providers API Keys

Some Data Providers require an API Key in order to be used, here is how to setup:

# you are in sismo-hub root
cp .example.env .env

Add your own API key by adding a new line to this file or fill an already existing Data Provider with an API key:

# in the .env file
export YOUR_DATA_PROVIDER_API_KEY="<API_KEY>"

Export the API key:

source .env

Contribute

Interested in contributing? Check out our CONTRIBUTING guide for a comprehensive guide on how to get started.

Requests

If you have a need for additional Data Providers in your Group Generators, please feel free to open an issue. We also encourage you to share your idea on Discord for further discussion. A submission template is available on CONTRIBUTING.

License

Distributed under the MIT License.

Contact

Send us a message in Telegram or Discord


bottom