CortenForge
Shared Rust crates for the CortenForge simulation substrate (capture, ETL, training, inference, and tooling). This repo is library-only; the colon_sim app and other demos now live in their own repositories.
- What’s here: the root
cortenforgeumbrella crate, core libraries undercrates/, and tooling undertools/. - Example app: see https://github.com/via-balaena/Deep-Poo for a colonoscopy robot sim built with CortenForge.
- Docs:
- CortenForge book (primary): https://via-balaena.github.io/CortenForge/ (source in
docs/cortenforge_book, build withmdbook build docs/cortenforge_book). - Legacy contributor/dissection books have been retired.
- CortenForge book (primary): https://via-balaena.github.io/CortenForge/ (source in
- User quickstart (apps): clone the app repo (e.g.,
https://github.com/via-balaena/Deep-Poo), build withcargo run -p sim_vieworinference_view, and wire hooks as needed. This repo stays library-only. - Releases: see
RELEASE.mdfor publish/tag steps. - License: Apache-2.0 by default; see
LICENSEandCOMMERCIAL_LICENSE.md.
Repository layout
Cargo.toml: workspace root + umbrella crate (cortenforge).crates/: core and mid‑layer libraries (sim_core,vision_*,data_contracts,models,training,inference,capture_utils,burn_dataset,cli_support).tools/:cortenforge-toolscrate (app‑agnostic tooling bins and helpers; not bundled by the umbrella crate).docs/: books and release material (docs/cortenforge_bookis the primary book).todo/: local planning (gitignored).
Quick start
- Build/test the crates:
cargo test --workspace --locked - Format:
cargo fmt --all - Docs:
mdbook build docs/cortenforge_book - Tools config: create
cortenforge-tools.tomlat repo root (or setCORTENFORGE_TOOLS_CONFIG) to customize paths/commands.
Using the crates from crates.io
- Add deps with
version = "0.4.0"(examples:cortenforge-sim-core,cortenforge-vision-core,cortenforge-vision-runtime,cortenforge-data-contracts,cortenforge-capture-utils,cortenforge-models,cortenforge-training,cortenforge-inference,cortenforge-cli-support,cortenforge-burn-dataset,cortenforge-tools). - Umbrella crate:
cortenforgeis at0.4.0(core stacks only; addcortenforge-cli-supportandcortenforge-toolsdirectly if needed). - Feature flags:
cortenforge-training:backend-wgpu(optional GPU); defaults to NdArray.cortenforge-inference:backend-wgpu(optional GPU); defaults to NdArray;tinydet/bigdetfeature gates.- Tools (
cortenforge-tools):scheduler,tui,gpu-nvidia. - Vision/runtime crates are lean by default; enable only what you need.
- Feature policy: keep defaults light, gate heavy backends/tools behind explicit flags, and document any new feature in the book’s feature matrix.
- Note: 0.3.0 removes legacy feature aliases; use
burn-runtimeandgpu-nvidiaonly. - MSRV: Rust 1.85+ across crates (CI uses 1.89.0 for toolchain compatibility).
- Note:
burn-coreis now on the fixed 0.19.1 release; no vendored patch is required.
Contributing
See docs/cortenforge_book for architecture, guided app building, and crate deep dives.