Skip to content

MakerSpaceLeiden/software-systems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

System Documentation

This repository contains C4 model files (.c4) that define software architecture models for the various Makerspace systems. From these models, we can dynamically generate views of the Makerspace software system.

What is C4 Modeling?

The C4 model was created to help build better mental models of their software architecture and communicate these models effectively to others.

It consists of four levels of abstraction:

  • Context: The highest level view showing your software system in its environment, including the people who use it and the other systems it interacts with. This answers the "what" and "why" questions and helps establish scope and boundaries.
  • Containers: Zooms into your software system to show the high-level technical building blocks. A container represents an application or data store that needs to be running for the overall system to work. Examples include web applications, mobile apps, databases, file systems, etc.
  • Components: The logical components within each container
  • Code: The implementation details

Note: For our purposes we will be focusing on the Context and Containers levels.

Diagrams

Currently we have the following views available:

  1. System Landscape
  2. System Containers
  3. Deployment

System Landscape

System Landscape

System Containers

Deployment

The deployment view is a mapping of the software containers onto physical hardware.

Deployment

Generating Output Diagrams

To generate diagrams from the C4 model, you can use the likec4 tool. This offers a DSL and command-line tool that can be used to generate diagrams from C4 model files.

Generate static diagrams

To generate static diagrams in an ./assets directory, you can use the following command:

npx likec4 export png -o ./assets

Generating Interactive Diagrams

npx likec4 build -o ./dist

Acknowledgments

About

Models which define software architecture models for the various Makerspace systems

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published