Skip to main content

OpenApparatus

OpenApparatus is a small ecosystem of open-source tools for procedurally generating reproducible navigation environments — multi-room floor plans, mazes, and behavioural-research apparatuses — with deterministic output suitable for replication across studies.

Same seed + same parameters → same environment. Methods sections only need to record the seed and parameters for a result to be reconstructable.

The three repos

The project is split across three repositories, each with a focused responsibility:

RepoWhat it isAudience
coreEngine-agnostic .NET library — topology, geometry, determinism.Library consumers, integrators.
studioCross-platform Avalonia desktop app for authoring, previewing, and exporting floor plans.Researchers, designers.
unityUnity Package Manager (UPM) package consuming Core to spawn environments in scenes.Unity developers.
┌──────────────────┐
│ OpenApparatus. │
│ Core (.NET lib) │
└────────▲─────────┘

┌──────────┴──────────┐
│ │
┌────────┴─────────┐ ┌───────┴──────────┐
│ OpenApparatus │ │ OpenApparatus │
│ Studio (Avalonia)│ │ Unity (UPM) │
└──────────────────┘ └──────────────────┘

Where to go next

  • Getting started — pick the path that matches your role.
  • Core — for working directly with the .NET library.
  • Studio — for authoring floor plans without writing code.
  • Unity — for using floor plans in Unity scenes.

Status

Pre-release — under active early development. Public APIs are unstable until v0.1.