i'm not like you ▣ THE WORKSHOP

← The Book

10 rheos exploration

1. What rheos IS

Rheos is a Blazor Server systems-dynamics studio — a web app for building causal loop diagrams (stocks, flows, feedback loops) and running simulations on them. Tech stack: .NET 9 / ASP.NET Core / Blazor Server with AddInteractiveServerComponents, Entity Framework Core 9 over SQL Server (with a local SQLite app.db in development), Cytoscape.js for graph rendering, and hand-rolled SVG for time-series charts. Roughly ~4,000 lines across C# services + Razor pages, plus ~25K lines of CSS theme tokens. The codebase shows active iteration through April 2026 with one file (ModelEditor.razor) touched as recently as the day this review’s parent directory was last opened — and there’s a polished E2E suite under tests/ (Playwright + SPPV-organized scenarios), a guided in-app tutorial, a community feedback + roadmap surface, and an EidosImportService that pulls ontologies straight out of a sister “Eidos” SQL Server DB.

It is not abandoned, not a toy — it’s a shipped-feeling solo product with Project → SystemModel → Stocks/Flows/Scenarios/SystemModes/Notes as its data spine. The closest mental analogue is Stella/Vensim/Insight Maker in a dark-themed single-user web shell. Its self-described mission (“Model how systems change over time. Build causal loops, simulate scenarios, find leverage points”) is the lens through which to evaluate the cosmology fit.

2. Notable capabilities

Storage / data model

Simulation engine (SimulationEngine.cs, ~340 lines)

Narrative + validation services

UI / visualization

Import / integration

Ops

3. Possible integrations with the cosmology project

A. Use Rheos’s SystemMode + SimulationEngine to model the Maintenance Procedure as a live Petri net

B. Lift SimulationEngine + SimulationNarrator as a Python port into the alien-app FastAPI

C. Reuse the Cytoscape CLD renderer for the concept/ontology graph

D. Adopt the FeedbackItem / Roadmap pattern for reader-submitted lore questions

E. Reuse GuidedTour for a first-visit codex onboarding flow

F. Sensitivity-analysis sweep as a “leverage point” feature in the codex

G. Use EidosImportService as a template for ingesting the existing SQLite ontology

4. What rheos CAN’T or SHOULDN’T do for this project

5. Recommendation

Yes, but selectively, and don’t run Rheos itself — port the parts that matter. The valuable artifact in this repo is the SimulationEngine + SimulationNarrator pair (~500 lines of dependency-free C# that translates cleanly to Python), together with the SystemMode data model (the Harel-statechart mode-switching pattern that maps almost directly onto the cosmology’s procedural Petri net). Everything else — the Blazor UI, the SQL Server backing, the Eidos importer, the roadmap surface — is interesting but either a poor fit for a reader-facing literary site or low-leverage versus what already exists.

Minimum-viable first integration: Port SimulationEngine.Simulate(), DetectFeedbackLoops(), and Narrate() into a small Python module inside alien-app (call it cosmology/sim/). Define the maintenance procedure as a YAML file: 6–10 stocks (Caretaker Awareness, Visitor Pressure, Ritual Integrity, …), 10–20 flows in transfer mode, and 2–3 system modes for the “things go wrong” / “things go right” branches. Wire one FastAPI endpoint /procedure/run?scenario=baseline|degraded|restoration that returns JSON. Drop the narrator output into a codex sidebar as an in-universe “Caretaker’s Last Log” entry that varies per scenario. If readers respond to it, layer in Integration F (sensitivity sweep) and Integration C (Cytoscape graph of the cosmology’s concept ontology). Skip Integrations D, E, G unless you have a separate reason to want them.

Do not stand up the Rheos Blazor app as a parallel service or attempt to embed it in the alien-app site. The cost (SQL Server, auth, deployment, Blazor Server’s socket model) is wrong for the use case. Treat rheos as a reference implementation and source of two excellent algorithm files, not as a deployable component.