Furio Try it
Before The architecture diagram, as most teams keep it. Illustration
storefront shop api payments users svc? queue (old) ? who owns this? updated Mar 2025

Furio likes things tidy.

Your architecture map, kept in your repos and checked like code. Every repo describes what it owns; Furio checks it on every pull request and draws the map of all of them.

Workspace
furio-demo
Parts
9
Checked by
furio validate
After The same services, drawn by Furio from three demo repos.
  • calls
  • publishes · consumes
  • reads · writes

How it works

  1. 1

    Each repo describes what it owns

    A small YAML file next to the code: the services, functions, queues and databases this repo owns, and what they call, publish, consume, read or write. Parts owned by other repos are referenced by id, never copied.

    # .architecture/architecture.yaml
    version: 1
    project: shop
    owner: team-shop
    
    components:
      - id: shop-api
        type: service
      - id: orders-events
        type: queue
        provider: aws.sqs
    
    relations:
      - from: shop-api
        to: orders-events
        type: publishes
      - from: shop-api
        to: platform/users-api
        type: calls
  2. 2

    Every pull request is checked

    The GitHub Action validates the manifest like code: a wrong type, an unknown field or a reference to a service that does not exist shows up on the diff, with the line and the fix.

  3. 3

    The catalog draws the map

    One repo in your organization collects every manifest each hour and publishes the map as a static site: every project, every dependency between teams, the parts other repos reference but nobody declares. No server, no database.

    Open the live demo to see the map of the three repos above.

Ask it what breaks

Relations are data, so the map can answer questions a drawing cannot. Select a part and light its blast radius: everything that stops working if it goes down, hop by hop. Or light everything it needs to work. Every view is a link you can paste in an incident channel.

#/?sel=platform/users-api&mode=impact

  • Workspace and project views with the dependencies between teams.
  • A page per component: owner, repo, links, every relation, its diagrams.
  • Mermaid diagrams from the repos, for the flows a graph cannot show.
  • A health page: repos without a manifest, missing owners, broken references.
  • Search, filters, PNG and SVG export.
Blast radius of platform/users-api: if it goes down, shop-api and storefront stop working.

Your coding agent keeps it updated

A map is only as good as its last update. Furio ships a skill that tells Claude Code, Codex and any agent that reads AGENTS.md to update the manifest in the same change as the code, and to run the check before it finishes.

Try it in your repo

  1. In a repo, create the manifest and teach your agent about it:
    npx @getfurio/cli init
  2. Describe what the repo owns, then check it:
    npx @getfurio/cli validate
  3. Add the check to pull requests and publish the map of your organization: Set up the GitHub Action

Open source under the MIT license. Node 22 or newer. Works with any GitHub organization.