Put something on the shelf
There are two kinds of repo. A chemistry holds a generator: a catalog entry plus the Python that builds its reaction network, so people can run it with their own parameters. A network holds one reaction network as plain data, with no code.
Share a chemistry
uv add chemart # or: pip install chemart chemart new my-chem # a working skeleton # edit my-chem/chemart.yaml and generator.py chemart check my-chem # the same checks the registry runs chemart push my-chem # opens a pull request
Share a network
import chemart
net = chemart.generate_network("chemart/brusselator", seed=1)
net.push_to_hub("you/brusselator-snapshot",
title="A Brusselator snapshot",
tags=["oscillator"])How sharing works here
This hub is built from a GitHub repository. chemart push and push_to_hub open a pull request that adds your folder under repos/<your GitHub name>/<name>/; they need the GitHub CLI (gh auth login once). Without it, they write the folder for you and print the steps to open the pull request by hand.
A check runs on every pull request: the files must form a valid repo, a chemistry must pass chemart check, and you may only change your own namespace. Once a maintainer merges it, the site rebuilds and your chemistry is on the shelf.
trust_remote_code=True.