Tools for parsing and storing workflow nodes with support for pyiron and Python functions
Project description
Sim Atlas
Search and discovery platform for simulation nodes — Python functions, workflow definitions, and pyiron nodes used in scientific computing.
Repository layout
sim_atlas/
├── backend/ FastAPI server (sim-atlas-backend)
├── frontend/ Search & discovery SPA, served at /
├── web_ide/ Visual workflow composer SPA, served at /ide
├── toolkit/ Client-side parser & upload library (sim-atlas-toolkit)
└── docs/ Architecture docs and ADRs
How it works
- Researchers run the toolkit on their machine to parse their Python packages and push node metadata to the server.
- The backend stores metadata, generates AI embeddings and AI-refined docstrings on demand, and exposes a REST API and MCP tool.
- The frontend and web_ide are React SPAs built into the backend's static directory and served by it.
Quickstart
1. Clone the repository and install it into a venv
cd <sim-atlas-env>
uv venv --python=3.12
uv pip install sim-atlas
2. Configure and start the backend
cd <sim-atlas-env>
uv run sim-atlas
On the first start the server will create a configuration file in the current working directory if it does not find one.
The API and both SPAs are now available at http://localhost:8000.
3. Generate an API token
Write access (uploading nodes) requires a JWT token:
cd <sim-atlas-env>
uv run sim-atlas-access-token "Your Name" "you@example.com"
export SIM_ATLAS_API_URL=http://localhost:8000/api/v1
export SIM_ATLAS_API_TOKEN=<token>
4. Upload nodes from a Python package
Load the environment with the modules you want to upload. Install the sim-atlas-toolkit into this environment. And upload the module. For example:
uv pip install sim-atlas-toolkit
uv run sim-atlas-upload --recursive filesystem mypackage.mymodule
5. Explore your newely created nodes
Head over to the webinterface and explore the nodes you uploaded:
http://localhost:8000
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sim_atlas_toolkit-0.0.5.tar.gz.
File metadata
- Download URL: sim_atlas_toolkit-0.0.5.tar.gz
- Upload date:
- Size: 12.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9cb6dddd99429dd81f2d4080ff72ea1ef4751543af69d852fe30f2a0b7756191
|
|
| MD5 |
a9754755f4cafc45b88f6e787ec5d220
|
|
| BLAKE2b-256 |
8ce49a2827b8f47d204b0678bf2a0c1ab1306c36373675592b9dd758ad3b50f7
|
File details
Details for the file sim_atlas_toolkit-0.0.5-py3-none-any.whl.
File metadata
- Download URL: sim_atlas_toolkit-0.0.5-py3-none-any.whl
- Upload date:
- Size: 20.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7b956d36bf106ccaf498850f2b10763083618673751aa9ce4e93062419c7dc7
|
|
| MD5 |
d09a84de1ab0dd59628b4afdcc91394e
|
|
| BLAKE2b-256 |
40672725f831860a728d11bf04150388107d40d0fb6935cec1bfaa0634a92795
|