Structurizr is an implementation of the C4 model as described in Simon Brown's Software Architecture for Developers book, which provides a way to easily and effectively communicate the software architecture of a software system. Structurizr allows you to create software architecture models and diagrams as code. This project contains the Java implementation and tooling.
Everything you see here is a work in progress. See www.structurizr.com for more information and the getting started guide for a simple example.
To build Struturizr for Java from the sources (you'll need Java 8)...
git clone https://github.com/structurizr/java.git
./gradlew build
The Structurizr for Java binaries are hosted on Bintray and the JCenter repository. The dependencies for use with Maven, Ivy, Gradle, etc are as follows.
Name | Description |
---|---|
com.structurizr:structurizr-core:0.3.1 | The core library that can used to create models. |
com.structurizr:structurizr-client:0.3.1 | The structurizr.com API client for Java for uploading models. |
com.structurizr:structurizr-spring:0.3.1 | The Spring integration to extract classes annotated @Controller, @Service and @Repository for identification as components. |
com.structurizr:structurizr-annotations:0.3.1 | Annotations to add software architecture hints into your own code. |