C-Star Forge
A utility for generating new regional oceanographic modeling domains and creating reproducible C-Star workflows through blueprint descriptors.
:alt: C-Star Forge Logo
:class: csforge-logo
:align: center
This project is still in an early phase of development.
You are welcome to try out using the package, but be aware that development is ongoing and we cannot yet guarantee backwards compatibility.
What is C-Star Forge?
C-Star is built on a system of applications (a model or computation you want to run) and blueprints (the inputs to an application that make its result reproducible). C-Star Forge is the application for creating new ROMS-MARBL domains.
Setting up a regional ocean simulation has traditionally meant weeks of bespoke work: designing a grid, collecting and regridding forcing datasets, hand-editing model configuration files, and hoping the result is reproducible on the next machine. C-Star Forge automates that path for ROMS-MARBL domains. You describe what you want — a region, a resolution, a time window, forcing sources — and Forge produces everything the model needs to run, in a form that C-Star can build and execute anywhere.
The whole workflow revolves around two YAML documents:
- A forge blueprint describes the domain you want. It is the single input to Forge, and it is complete: given the same forge blueprint, Forge generates the same setup.
- A ROMS-MARBL blueprint describes the setup Forge generated — the model code, input files, and runtime settings of a concrete, runnable simulation. It is Forge's output, and C-Star's input.
How it works
C-Star Forge takes you from "I want a regional ROMS-MARBL domain here" to a running simulation in three conceptual steps:
-
Build a forge blueprint. An interactive wizard — a point-and-click web form, also usable inside Jupyter — walks you through the choices: a model spec, a domain from the bundled catalog (or your own), forcing sources, output settings. The result is saved as a single
forge_blueprint.yaml. Because the wizard is just a front-end for writing this file, you can also start from an example blueprint and edit it by hand. -
Process the blueprint. The Forge executor consumes the forge blueprint on the machine where the data should live. It fetches and prepares the source datasets, generates every ROMS input file (grid, initial conditions, surface and boundary forcing, rivers, tides), renders the model settings, and emits the ROMS-MARBL blueprint describing the finished setup.
-
Run the simulation. C-Star consumes the ROMS-MARBL blueprint to fetch and compile the model code and execute the simulation — on your laptop or on a supported HPC system. Forge is out of the picture at this point: the handoff is the blueprint file alone.
The input files are generated with ROMS Tools, drawing on GLORYS (ocean reanalysis), ERA5 (atmospheric reanalysis), UNIFIED_BGC (biogeochemical climatology), SRTM15 (bathymetry), DAI/GLOFAS (river discharge), and TPXO (tides).
Each step can happen on a different machine. A common pattern is building the blueprint in a browser on your laptop, processing it on the cluster where the forcing data lives, and running the simulation through C-Star's scheduler support on that same cluster.
Where to go next
- Getting Started — install with one conda command and take a small toy domain from wizard to running simulation.
- Installation — HPC installs, developer setups, and reproducible locked environments.
- Documentation — concepts, the domain catalog, machine configuration, and developer guides.
Metadata
Release files for cstar-forge 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cstar_forge-0.4.0.tar.gz | 4.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cstar_forge-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.0 MB
Release files / cstar_forge-0.4.0.tar.gz
| Download URL | cstar_forge-0.4.0.tar.gz |
|---|---|
| Size | 4.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
79cea9ed0dcd2fb73da6da409fcfec2ace4d4917bea6993a56dec9dbffc8225a
|
|
BLAKE2b-256 checksum How to use checksums |
e9f588cc8d1810bc605319edee02a37ef2b4277343938a7c5908386f92e5a154
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 12, 2026.
Transparency logRelease files / cstar_forge-0.4.0-py3-none-any.whl
| Download URL | cstar_forge-0.4.0-py3-none-any.whl |
|---|---|
| Size | 229.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
981275516a2f3c20cdc84b41a26ec236d6f27e5f4e79472f9b5bc8e0b88803b8
|
|
BLAKE2b-256 checksum How to use checksums |
16cba6520762d4b0b0393c4af8ead1a83ef02d52dfd00c323687b13c69f56e76
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 12, 2026.
Transparency log