{
  "$comment": "The single source of the directory at the top of openeik.org/apps (\"The apps today\"); see APPS.md. Update it whenever an app's status changes, and set `updated`. Then run `node tools/apps.mjs` to refresh the page's no-script copy. The pattern sections below the directory are plain HTML in site/apps.html. No client or project names; a company is named only when it has agreed. Text in `backticks` is shown as code.",
  "updated": "2026-10-11",
  "statuses": [
    {
      "id": "live",
      "label": "Live",
      "text": "In use today."
    },
    {
      "id": "testing",
      "label": "In testing",
      "text": "Works, and is being tested with early users."
    },
    {
      "id": "development",
      "label": "In development",
      "text": "Being built; parts of it work."
    },
    {
      "id": "pilot",
      "label": "Pilot",
      "text": "Tried out with one organisation."
    },
    {
      "id": "research",
      "label": "Research",
      "text": "A study: what an app would need, before it is built."
    }
  ],
  "relations": [
    {
      "id": "reference",
      "label": "Reference implementation",
      "text": "The evidence that each rule of the standard can be met."
    },
    {
      "id": "reads",
      "label": "Reads",
      "text": "Reads OpenEik models."
    },
    {
      "id": "writes-own",
      "label": "Writes its own folder",
      "text": "Keeps its own data beside the building, in a folder of its own."
    },
    {
      "id": "proposes",
      "label": "Proposes commands",
      "text": "Changes the building only by proposing checked commands, which a person accepts."
    }
  ],
  "apps": [
    {
      "name": "Stomra",
      "status": "live",
      "statusNote": "OpenEik support in testing",
      "what": "BIM authoring for people and AI agents, and the reference implementation of OpenEik.",
      "relations": [
        {
          "id": "reference"
        },
        {
          "id": "reads"
        }
      ],
      "reads": "The whole model: every record, and other apps' files, which it keeps as they are.",
      "writes": "The whole model. Its `ek` engine reads, checks and edits OpenEik folders, every change a checked command.",
      "link": "https://stomra.com"
    },
    {
      "name": "Femra",
      "status": "development",
      "what": "Structural analysis by the finite element method, to Eurocode, as a connector for AI assistants.",
      "relations": [
        {
          "id": "reads"
        },
        {
          "id": "writes-own",
          "planned": true
        },
        {
          "id": "proposes",
          "planned": true
        }
      ],
      "reads": "Beams, columns, slabs, walls, roofs, foundations, their types and materials, and the levels, by the format alone.",
      "writes": "Designed to keep its analysis models and results in its own folder beside the building, tied to the version they were computed from. That writer is not built yet.",
      "link": "https://femra.app"
    },
    {
      "name": "The `openeik` command and library",
      "status": "testing",
      "statusNote": "public with the specification in Q4 2026",
      "what": "Read, check, hash, diff, push and pull OpenEik models, from the command line or inside an app. Written from the specification alone, with no dependencies.",
      "relations": [
        {
          "id": "reads"
        }
      ],
      "reads": "Every file of a model folder, or a version from a store.",
      "writes": "A version to a store when it pushes, and a version into a folder when it pulls. It does not edit the building.",
      "link": ""
    },
    {
      "name": "A railing manufacturer",
      "status": "research",
      "what": "A supplier reads a model, checks its railings against what it can make, and proposes changes.",
      "relations": [
        {
          "id": "reads",
          "planned": true
        },
        {
          "id": "proposes",
          "planned": true
        }
      ],
      "reads": "Railings, and the stairs, slabs and levels they are fixed to.",
      "writes": "Nothing in the building. Its changes come as proposals that a person reviews.",
      "note": "The study is behind the roadmap's richer railing types, and behind the supplier pattern.",
      "link": "",
      "more": {
        "text": "How suppliers propose in the model",
        "href": "/suppliers"
      }
    }
  ]
}
