c4-notation
C4-PlantUML
c4-notation | C4-PlantUML | |
---|---|---|
134 | 26 | |
25 | 6,444 | |
- | 1.0% | |
10.0 | 6.7 | |
over 5 years ago | about 1 month ago | |
PlantUML | ||
Apache License 2.0 | MIT License |
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-notation
-
Step outside the Happy Path
Start by formalizing the architecture. You don’t need heavy enterprise methodologies like TOGAF; use formats that fit the team and product. Frameworks like arc42 are suitable for complex systems, while simpler projects may only need C4 diagrams supplemented with a few additional visualizations.
-
C4 Model - The Basics
Software Architecture is all about developing systems that scale and are maintainable. Clear visualizations will help teams to communicate the design effectively. The C4 model comes in handy for this task! But what is C4, and why should you care?
-
Turning the Crank: Design as a Mechanical Process
https://c4model.com/ is very useful for this. :-)
I've told it before, but when we were doing some clean sheet work a while ago I decided to use the C4 model and drew out the obligatory "Context" diagram with "user" "phone" "laptop" "app" sort of stuff... and then two hours later realized that because we had both an online and a semi-disconnected mobile app that could be offline, certain things -had- to use a queue and expect an arbitrary amount of time for a task to run, and it completely changed how we thought about the core of how we implemented something pretty important.
Sold. :-)
-
Vega – A declarative language for interactive visualization designs
What sort of maps are you wanting to build? https://c4model.com/ seems to be the more popular standard for this style at the moment. https://github.com/plantuml-stdlib/C4-PlantUML makes this somewhat easy to code out. (And I think most cloud providers have addons for it.)
- Ask HN: Best tool to create cloud architecture diagrams
- Ask HN: Visualize Software Architecture/Concepts
-
Devs need system design tools, not diagramming tools
It sounded like it was working up to a C4 pitch but never got there. It bears a look exactly for this post's title.
https://c4model.com
-
Book: Just Enough Software Architecture
Simon Brown is another person who has done a far better job than me of "democratizing" software architecture for developers. His talks [1] and workshops on architecture are exceptionally effective and his C4 architecture modeling language [2] is getting real traction.
I have youtube videos too [3] but they aren't as effective.
[1] https://www.youtube.com/results?search_query=simon+brown+arc...
[2] https://c4model.com/
[3] https://www.youtube.com/playlist?list=PLRqKmfi2Jh3uoMnZdaWmC...
-
Ask HN: Guidelines for making clear architecture diagrams
Second this.
Reference for anyone looking I to it: https://c4model.com/
There is also quite a lot of options for helping create these diagrams. I've found https://structurizr.com/ to be the best of what I've tried so far.
-
Show HN: Flyde – an open-source visual programming language
What you are describing sounds a lot like C4: https://c4model.com/
C4-PlantUML
- C4 Model - The Basics
-
Vega – A declarative language for interactive visualization designs
What sort of maps are you wanting to build? https://c4model.com/ seems to be the more popular standard for this style at the moment. https://github.com/plantuml-stdlib/C4-PlantUML makes this somewhat easy to code out. (And I think most cloud providers have addons for it.)
-
Ask HN: Guidelines for making clear architecture diagrams
Third this. Don't look any further, just do it!
Also, PlantUML + C4 is like peanut butter & jelly:
https://github.com/plantuml-stdlib/C4-PlantUML
I'll gladly give up control of layout, and accept some ugliness, to never again have to worry about dragging boxes and arrows to be pixel-aligned, and then do it all over again when I add another box...
It looks like Mermaid has C4 support too:
https://mermaid.js.org/syntax/c4.html
-
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?
What are some alternatives?
excalidraw - Virtual whiteboard for sketching hand-drawn like diagrams
mermaid - Generation of diagrams like flowcharts or sequence diagrams from text in a similar manner as markdown
backstage - Backstage is an open framework for building developer portals
d2 - D2 is a modern diagram scripting language that turns text to diagrams.
arc42.org-site - (jekyll-based) website for arc42.org - the template for communicating software architectures.
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
diataxis-documentation-framework - A systematic approach to creating better documentation.
dsl - Structurizr DSL