Skip to content

Developer Guide

This section is for developers working on or extending the Hera platform. It covers architecture, data model internals, testing, and how to build new toolkits.


Architecture

  • Core Concepts - Deep dive into Project, ToolkitHome, abstractToolkit, and dataToolkit with class diagrams
  • Data Layer - MongoDB document model, datatypes, the repository JSON pipeline, connections, and function caching

Toolkit Implementation

  • Measurements - GIS, meteorology, and experiment toolkit internals, class hierarchies, coordinate utilities
  • Simulations - OpenFOAM, LSM, Gaussian, wind profile, ML/DL, workflow system internals
  • Risk Assessment - Agent/effects/injury system, protection policies, risk area algorithms
  • RAG Search Toolkit - Architecture, indexer, search API, REST server, file watcher, MkDocs plugin, CLI reference

API Reference

  • API Reference - Auto-generated documentation from Python source code covering all public classes and functions

Testing

  • Getting Started with Tests - Setting up the test environment and running tests
  • Test Flow - Pytest test-session lifecycle, fixtures, repository data loading, and teardown
  • Unit Tests - The hermetic unit-test layer under hera/tests/unit/ (pending merge into master)

Roadmap

  • Roadmap - Planned improvements: contract-first typed interfaces, unified toolkit registry, env var DB config, async DB access, data-handler plugins

Reference