C4-PlantUML
c4-notation
Our great sponsors
C4-PlantUML | c4-notation | |
---|---|---|
23 | 125 | |
6,028 | 25 | |
2.4% | - | |
6.9 | 10.0 | |
about 1 month ago | almost 5 years ago | |
PlantUML | ||
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
C4-PlantUML
-
Documentation as Code for Cloud - C4 Model & Structurizr
C4-PlantUML: Export your model as C4-PlantUML diagrams.
-
Which tools do you use to create diagrams?
PlantUML + C4 plugin;
-
Add quick sketches in emacs org mode
Yes. I use this all the time for software diagramming. With c4 model (https://github.com/plantuml-stdlib/C4-PlantUML) and AWS icons (https://github.com/awslabs/aws-icons-for-plantuml)
-
Architecture diagrams should be code
The C4 model (https://c4model.com/) is great for architecture diagrams. You can use different tools to generate them. Here are the ones I've been using:
- https://github.com/plantuml-stdlib/C4-PlantUML
- D2 language, open source alternative to PlantUML
- Keep your diagrams updated with continuous delivery
- What FOSS programs would you recommend for creating concept maps on Linux?
-
C4 model for system architecture design
3️⃣ Text-based diagramming- C4-PlantUML
-
Ask HN: Confluence Alternative(s) Supporting Markdown?
> onboarding docs
yes, they're don't changing frequently
> system design docs
yes - see C4-PlantUML[1]
> meeting notes
no, unless they're directly code related like ADRs [2,3].
Although one can abuse Github Issues + comments for this, in my opinion it's better to use modern SaaS tools for this, i.e. Loom, Descript, Linear.app, etc. - you can automate this process, e.g. transcribe the meeting's recording and add the issue/repo using Github Actions.
--
[1] https://github.com/plantuml-stdlib/C4-PlantUML
[2] https://adr.github.io/
[3] https://docs.aws.amazon.com/prescriptive-guidance/latest/arc...
-
Do you take physical notes while working on your game? Or just play around and learn by doing?
I use a combination of: * Markdown (for notes and code blocks) * Mermaid markdown (for architectural diagrams in markdown documents) * PlantUML markdown (again for arch. docs in markdown, but mainly for C4 diagrams) * a Docker container to render PlantUML markdown to images * Joplin, installed on every device I regularly use * NextCloud, to store, secure, encrypt, and make available everywhere, the markdown notes managed by Joplin
c4-notation
-
Show HN: Flyde – an open-source visual programming language
What you are describing sounds a lot like C4: https://c4model.com/
-
Ask HN: How do you document complex software systems?
The C4 model [0] provides a mostly sensible structure and techniques for representing pure software systems across different abstraction levels.
For systems involving software and hardware, or other complex interfacing (both technology and bureaucracy) this starts to delve into the universe of systems engineering. There's a decent assembly of knowledge on that in the SEBoK [1].
As another commenter has already called out too, one of the most valuable sources of information is also _why_ a system is in its current form and _how_ that's changed over time. ADR's [2] really do a good job at nailing this for just about any scale.
[0]: https://c4model.com
[1]: https://sebokwiki.org
[2]: https://adr.github.io
-
A View on Functional Software Architecture
There a various standards for documenting software architecture, like arc42 or C4. While useful and somewhat well-known (there is certainly a correlation here), here architecture documentation can be further simplified, particularly due to the self-similarity of project and component. Following is a small template, that can also serve as a project's and component's README:
- The C4 model for visualising software architecture
-
Inkscape Cloud Architect
I would suggest that if your architecture diagrams are a bunch of icons provided by AWS/Azure/GCP with lines pointing at each other... you are doing it wrong.
The 'what does this box do for my system' is vastly more important than the 'which in vogue offering from my cloud provider implements it'.
I highly suggest folks take a look at the C4 Model: https://c4model.com/
- What do you wish business folks knew about UML?
-
How to create interactive zoomable software architecture diagrams
We often use abstractions in software engineering to communicate complex architectures and software systems. In this article, we’ll discuss how abstractions are inherently hierarchical and how the C4 model provides a nested structure for defining your software architecture. We’ll then cover how IcePanel allows you to create interactive and zoomable diagrams for your audience to zoom in and out of different levels of technical detail.
-
Architecture diagrams enable better conversations
You probably want https://c4model.com/ which explains what a C4 architecture diagram is. (See the first footnote in the article.)
-
Do modern diagramming techniques play a crucial role in software development?
I looked at the book OP is talking about and it seems to be advocating 'C4' (https://c4model.com/). IMO this is the same kind of block diagrams we end up creating organically. I dunno that I'd call this 'modern' or anything special, it's just what everyone already does. I've done hundreds of these and not once has anyone ever mentioned 'C4' or anything being 'modern'. Shrug
What are some alternatives?
mermaid - Generation of diagrams like flowcharts or sequence diagrams from text in a similar manner as markdown
excalidraw - Virtual whiteboard for sketching hand-drawn like diagrams
d2 - D2 is a modern diagram scripting language that turns text to diagrams.
backstage - Backstage is an open platform for building developer portals
aws-icons-for-plantuml - PlantUML sprites, macros, and other includes for Amazon Web Services services and resources
Azure-PlantUML - PlantUML sprites, macros, and other includes for Azure services
pumla - pumla - systematic re-use of model elements described with PlantUML
plantuml - Generate diagrams from textual description
dsl - Structurizr DSL
Mermaid - Edit, preview and share mermaid charts/diagrams. New implementation of the live editor.