Skip to content

structurizr/json

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 

Repository files navigation

Structurizr JSON

This GitHub repository contains the definition of the JSON schema for describing software architecture models based upon the C4 model, and is the data storage format used by the Structurizr tooling.

The JSON format is not designed to be authored manually - the Structurizr DSL is the recommended tool for creating a workspace.

Workspace validation rules

In addition to the JSON schema, workspaces are also subject to the following rules, which are implemented by the Structurizr for Java library:

  • Element and relationship IDs must be unique.
  • View key and order properties must be unique across all views.
  • Software and people names must be unique.
  • Container names must be unique within the context of a software system.
  • Component names must be unique within the context of a container.
  • Deployment node names must be unique with their parent context.
  • Infrastructure node names must be unique with their parent context.
  • All relationships from a source element to a destination element must have a unique description.