1. Introduction
  2. Why FerroEHR exists
  3. Getting started
  4. Installation
    1. Try it in Codespaces
    2. Docker Compose
    3. Kubernetes & Helm
    4. Cluster hardening
      1. The cluster: hosts, control plane, access
      2. Images: build, provenance, scanning
      3. The workload: security context & admission
      4. Namespaces, network & policy
      5. Secrets, detection & response
    5. From source
    6. Configuration reference
      1. Server, database & telemetry
      2. Authentication & access
      3. Integrations
      4. Audit & subject proxy
      5. Privacy & data minimisation
      6. CLI & production checklist
  5. Concepts
    1. openEHR primer
    2. System architecture
    3. Storage architecture
    4. The AQL engine
  6. Using the API
    1. Resource walkthroughs
    2. Content negotiation & errors
  7. Querying with AQL
  8. Templates & validation
  9. Beyond the core
    1. EHR Extract & messaging
    2. Demographics
    3. Terminology servers
    4. Subject Proxy
    5. Change events (AMQP)
    6. FHIR connectors
    7. S3 multimedia
  10. Security
    1. Verifying releases
    2. Threat model
    3. Data protection impact assessment
    4. Records of processing
    5. Go-live checklist
    6. Enterprise identity providers
    7. SMART App Launch
    8. Audit trail (IHE ATNA)
    9. Version signing
      1. Digest signing
      2. PGP signing
  11. FerroEHR Viewer
    1. Dashboard & queries
    2. Templates & EHR browsing
    3. Demographics
    4. Terminology
    5. Operations panel
    6. FHIR connector
    7. Event subscriptions
    8. Dark mode
  12. Operations
    1. Admin & messaging APIs
  13. Conformance
  14. Performance
  15. Benchmarks
  16. Comparison with EHRbase
  17. Rust crates
  18. Contributing
  19. Licensing & legal
    1. Compliance overview
    2. Shared responsibility
    3. Retention, restriction and objection
    4. Control matrix
    5. EHDS readiness
    6. Technical documentation readiness