Table of Contents

Class StructurizrDocumentationTemplate

Namespace
C4.Net.Documentation
Assembly
C4.Net.Core.dll

A simple documentation template, based upon the "software guidebook" concept in Simon Brown's Software Architecture for Developers book, with the following sections:

  • Context (1)
  • Functional Overview (2)
  • Quality Attributes (2)
  • Constraints (2)
  • Principles (2)
  • Software Architecture (3)
  • Containers (3)
  • Components (3)
  • Code (3)
  • Data (3)
  • Infrastructure Architecture (4)
  • Deployment (4)
  • Development Environment (4)
  • Operation and Support (4)
  • Decision Log (5)

The number in parentheses () represents the grouping, which is simply used to colour code section navigation buttons when rendered.

public class StructurizrDocumentationTemplate : DocumentationTemplate
Inheritance
StructurizrDocumentationTemplate
Inherited Members

Constructors

StructurizrDocumentationTemplate(Workspace)

Creates the Structurizr guidebook template helper for a workspace.

public StructurizrDocumentationTemplate(Workspace workspace)

Parameters

workspace Workspace

The workspace whose documentation will be populated.

Methods

AddCodeSection(Component, Format, string)

Adds a "Code" section relating to a Component.

public Section AddCodeSection(Component component, Format format, string content)

Parameters

component Component

the Component the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddCodeSection(Component, params FileSystemInfo[])

Adds a "Code" section relating to a Component from a file.

public Section AddCodeSection(Component component, params FileSystemInfo[] files)

Parameters

component Component

the Component the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddComponentsSection(Container, Format, string)

Adds a "Components" section relating to a Container.

public Section AddComponentsSection(Container container, Format format, string content)

Parameters

container Container

the Container the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddComponentsSection(Container, params FileSystemInfo[])

Adds a "Components" section relating to a Container from a file.

public Section AddComponentsSection(Container container, params FileSystemInfo[] files)

Parameters

container Container

the Container the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddConstraintsSection(SoftwareSystem, Format, string)

Adds a "Constraints" section relating to a SoftwareSystem.

public Section AddConstraintsSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddConstraintsSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Constraints" section relating to a SoftwareSystem from a file.

public Section AddConstraintsSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddContainersSection(SoftwareSystem, Format, string)

Adds a "Containers" section relating to a SoftwareSystem.

public Section AddContainersSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddContainersSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Containers" section relating to a SoftwareSystem from a file.

public Section AddContainersSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddContextSection(SoftwareSystem, Format, string)

Adds a "Context" section relating to a SoftwareSystem.

public Section AddContextSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddContextSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Context" section relating to a SoftwareSystem from a file.

public Section AddContextSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddDataSection(SoftwareSystem, Format, string)

Adds a "Data" section relating to a SoftwareSystem.

public Section AddDataSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddDataSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Data" section relating to a SoftwareSystem from a file.

public Section AddDataSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddDecisionLogSection(SoftwareSystem, Format, string)

Adds a "Decision Log" section relating to a SoftwareSystem.

public Section AddDecisionLogSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddDecisionLogSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Decision Log" section relating to a SoftwareSystem from a file.

public Section AddDecisionLogSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddDeploymentSection(SoftwareSystem, Format, string)

Adds a "Deployment" section relating to a SoftwareSystem.

public Section AddDeploymentSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddDeploymentSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Deployment" section relating to a SoftwareSystem from a file.

public Section AddDeploymentSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddDevelopmentEnvironmentSection(SoftwareSystem, Format, string)

Adds a "Development Environment" section relating to a SoftwareSystem.

public Section AddDevelopmentEnvironmentSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddDevelopmentEnvironmentSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Development Environment" section relating to a SoftwareSystem from a file.

public Section AddDevelopmentEnvironmentSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddFunctionalOverviewSection(SoftwareSystem, Format, string)

Adds a "Functional Overview" section relating to a SoftwareSystem.

public Section AddFunctionalOverviewSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddFunctionalOverviewSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Functional Overview" section relating to a SoftwareSystem from a file.

public Section AddFunctionalOverviewSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddInfrastructureArchitectureSection(SoftwareSystem, Format, string)

Adds an "Infrastructure Architecture" section relating to a SoftwareSystem.

public Section AddInfrastructureArchitectureSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddInfrastructureArchitectureSection(SoftwareSystem, params FileSystemInfo[])

Adds an "Infrastructure Architecture" section relating to a SoftwareSystem from a file.

public Section AddInfrastructureArchitectureSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddOperationAndSupportSection(SoftwareSystem, Format, string)

Adds an "Operation and Support" section relating to a SoftwareSystem.

public Section AddOperationAndSupportSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddOperationAndSupportSection(SoftwareSystem, params FileSystemInfo[])

Adds an "Operation and Support" section relating to a SoftwareSystem from a file.

public Section AddOperationAndSupportSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddPrinciplesSection(SoftwareSystem, Format, string)

Adds a "Principles" section relating to a SoftwareSystem.

public Section AddPrinciplesSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddPrinciplesSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Principles" section relating to a SoftwareSystem from a file.

public Section AddPrinciplesSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddQualityAttributesSection(SoftwareSystem, Format, string)

Adds a "Quality Attributes" section relating to a SoftwareSystem.

public Section AddQualityAttributesSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddQualityAttributesSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Quality Attributes" section relating to a SoftwareSystem from a file.

public Section AddQualityAttributesSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section

AddSoftwareArchitectureSection(SoftwareSystem, Format, string)

Adds a "Software Architecture" section relating to a SoftwareSystem.

public Section AddSoftwareArchitectureSection(SoftwareSystem softwareSystem, Format format, string content)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

format Format

the format of the documentation content

content string

a string containing the documentation content

Returns

Section

a documentation Section

AddSoftwareArchitectureSection(SoftwareSystem, params FileSystemInfo[])

Adds a "Software Architecture" section relating to a SoftwareSystem from a file.

public Section AddSoftwareArchitectureSection(SoftwareSystem softwareSystem, params FileSystemInfo[] files)

Parameters

softwareSystem SoftwareSystem

the SoftwareSystem the documentation relates to

files FileSystemInfo[]

one or more FileSystemInfo objects that point to the documentation content

Returns

Section

a documentation Section