Group Generators
Last updated
Last updated
Groups are a reusable tool used by Sismo to generate available Data Groups for proving schemes.
You will find more information on what are groups in this section:
Generating Data Groups and making them available for proving schemes requires some infrastructure. We have developed a repository, the sismo-hub, to let anyone propose new Data Groups and make them available for Hydra proving schemes with a simple PR.
You will be able to create your own group of accounts (Ethereum addresses, Github accounts and Twitter accounts) and then use it in a Sismo Connect app.
Here is a complete tutorial describing all the group creation process steps:
The following documentation aims to describe the code in a more theoretical way, we strongly recommend doing the tutorial to understand what the code below is for, especially for newcomers.
A group generator is a tool that allows us to easily generate groups and store them in scalable infrastructure.
The GroupGenerator object is made of a generate function which will be executed at a specific GenerationFrequency
.
Here the GenerationFrequency
is Once
. That means it will be executed just one time. It is an Enum that accepts Daily
, Weekly
or Monthly
value.
Let's improve our group generator to return a very simple group:
In the above example, the group generator will create a group named my-simple-group
. Its timestamp will correspond to the execution of the generate
function.
This group, my-simple-group
, contains 7 accounts, four Ethereum addresses (two addresses as you know them, one ENS handle and one Lens handle) which all have a value of 1, two GitHub accounts with values of 2 and 4 and one Twitter account with a value of 3 as you can see in the data
field.
Tags
are used to easily retrieve groups once they are generated.
Learn how to query data easily:
Learn how to combine groups easily:
You can find all the groups that can be generated in the group-generators/generators
folder.
This is where you need to reference your group to see it generated in the future.
For more information or help, Join us on Discord.