A Maven archetype allowing you to easily create your agile architecture documentation using a mix of C4, Asciidoc and PlantUML
Since I use Jitpack for easy deployment of that archetype, and maven requires archetypes to be defined in settings.xml, you first have to define a jitpack profile in your settings.xml this way
<profile>
<id>jitpack</id>
<repositories>
<repository>
<id>archetype</id><!-- id expected by maven-archetype-plugin to avoid
fetching from everywhere -->
<url>https://jitpack.io</url>
<releases>
<enabled>true</enabled>
<checksumPolicy>fail</checksumPolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
</repositories>
</profile>
Then, you can use the archetype by running this maven-friendly 😅command.
mvn archetype:generate -DarchetypeVersion=master-SNAPSHOT -DarchetypeRepository=https://jitpack.io -DarchetypeGroupId=com.github.Riduidel -DarchetypeArtifactId=agile-architecture-documentation-archetype -Pjitpack
This will ask you a few questions and generate the project.
Once the archetype has been run, you'll have a project with Structurizr compatible source in src/main/java
and asciidoc files following Agile architecture documentation template in src/docs/asciidoc
.
Running mvn install
will
- compile and run Java code to have C4 model-compatible diagrams generated by PlantUML
- generate AsciiDoc HTML and PDF files
Running mvn fizzed-watcher:run
will start the fizzed-watcher plugin, which observes changes in source folders and regenrates output at need. This is particularly handy when working on project.
👤 Nicolas Delsaux
Contributions, issues and feature requests are welcome!
Feel free to check issues page.
Give a ⭐️ if this project helped you!
This README was generated with ❤️ by readme-md-generator