SimBoard is an E3SM-focused catalog for simulation metadata. It turns simulation archives and run metadata into a browsable, comparable record of cases, executions, provenance, and related artifacts.
SimBoard exists so researchers and maintainers do not have to reconstruct simulation context from raw files, ad hoc notes, and scattered links. The repository is centered on simulation metadata, comparison, and provenance rather than raw model output serving.
- Ingest packaged simulation archives into normalized case and simulation records
- Browse runs and cases from the UI
- View case details, simulation details, artifacts, and external links
- Compare selected simulations side by side
- Preserve provenance such as machine, Git metadata, HPC username, artifacts, and external links
- Resolve PACE experiment links from execution IDs
- Support browser-based GitHub auth and service-account token auth for privileged automation
SimBoard is organized as a React frontend, a FastAPI backend, and PostgreSQL-backed persistence. Together they handle metadata ingestion, normalization, browsing, comparison, provenance, and authenticated upload workflows.
For architecture diagrams, API/data-flow detail, and contributor-oriented system context, see docs/developer/README.md.
- Frontend: React, TypeScript, Vite, React Router, TanStack Query, Tailwind CSS, shadcn/ui
- Backend: FastAPI, Pydantic, SQLAlchemy, Alembic
- Database: PostgreSQL
- Auth: GitHub OAuth for browser flows, API tokens for service accounts
- Tooling:
uv,pnpm,ruff,mypy,eslint,prettier,pre-commit - CI/CD: GitHub Actions plus NERSC-focused deployment/build docs under
docs/
- Contributor guide: docs/developer/README.md
- Contribution workflow: CONTRIBUTING.md
- Backend details: backend/README.md
- Frontend details: frontend/README.md
- Docs index: docs/README.md
- CI/CD and deployment docs: docs/cicd/README.md
Start with CONTRIBUTING.md for issue, branch, commit, PR, and validation expectations. If you are new to the repo, use the contributor guide at docs/developer/README.md for local setup, architecture, and development workflow.
Apache License 2.0 — see LICENSE.
