awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
plantuml-stdlib avatar

plantuml-stdlib/C4-PlantUML

0
View on GitHub↗
7,327 stars·1,168 forks·PlantUML·MIT·18 views

C4 PlantUML

C4-PlantUML is a code-driven library that generates C4 model software architecture diagrams from PlantUML source text. It provides a set of reusable macros for creating system context, container, component, and deployment diagrams, enabling architects and developers to describe and communicate software architecture using the C4 model notation directly from diagram-as-code source files.

The library distinguishes itself through hierarchical element nesting, which builds diagrams by nesting elements inside boundaries using PlantUML's rectangle and package constructs, and layout-direction control that enforces a consistent reading flow across all diagram types. It embeds color-coded legends directly into the drawing canvas, integrates with PlantUML's sequence diagram syntax to model time-ordered message flows, and renders person and system elements using embedded sprite definitions for consistent, scalable icons. Tag-driven visual styling allows custom colors, line styles, and shapes to be applied by mapping user-defined tags to PlantUML style directives, while version metadata injection outputs library version information as a PlantUML note or table.

The library supports a range of diagram types including system context, container, component, deployment, dynamic, and C4-styled sequence diagrams. It offers controls for element display customization, such as hiding stereotypes, showing element type labels, overriding shapes with standard PlantUML types, and customizing person element appearance. Layout direction can be set to top-to-bottom, left-to-right, or landscape orientation, and legends can be placed as floating elements for compact layout. A sketch mode applies a hand-drawn visual style to indicate draft or work-in-progress designs, with customizable background color, font, warning color, and footer text. Additional capabilities include element property annotation for attaching multi-column property tables, custom sprites and icons, and version information display.

Features

  • C4 Architecture Diagrams - Implements the C4 model for creating system context, container, component, and deployment diagrams.
  • Container Diagrams - Ships macros for generating container-level C4 diagrams that visualize applications and data stores.
  • System Context Diagrams - Provides macros for generating C4 system context diagrams that show system boundaries and external interactions.
  • Component Diagrams - Provides macros for creating component-level C4 diagrams that decompose containers into internal parts.
  • C4 Diagram as Code - Generates C4 architecture diagrams from PlantUML source text using a diagram-as-code approach.
  • C4 Model Documentation - Enables documenting software architecture through C4 model diagrams generated from PlantUML source.
  • Macro-Based Diagram Generators - Ships reusable PlantUML macros that expand into complete C4 diagram elements and relationships at render time.
  • PlantUML C4 Extensions - Extends PlantUML with C4 model macros for architectural diagramming.
  • Diagram Element Nesting - Provides hierarchical nesting of elements within boundaries to build system context, container, and component diagrams.
  • Diagram Layout Orientations - Sets the overall reading direction of the diagram to top-to-bottom, left-to-right, or landscape orientation.
  • Directional Flow Controllers - Controls the directional flow of diagram elements using PlantUML skinparam and rankdir directives.
  • Diagram Annotations - Attaches multi-column property tables to any element or relationship for additional documentation.
  • C4 Sequence Diagram Integrations - Integrates C4 element macros into PlantUML sequence diagram syntax for time-ordered message flows.
  • C4-Styled - Integrates C4 elements into PlantUML sequence diagrams for time-ordered architecture message flows.
  • Dynamic Diagrams - Supports creating dynamic C4 diagrams that model interaction sequences between system elements.
  • Diagram Notation Legends - Embeds a color-coded legend inside the drawing canvas to explain element types and relationship styles.
  • C4 Sequence Diagrams - Models time-ordered message flows between participants using C4-styled sequence diagrams.
  • Diagram Customization - Provides extensive customization options for C4 diagrams including legends, styles, and element properties.
  • Deployment Diagrams - Provides macros for creating C4 deployment diagrams that map containers to infrastructure nodes.
  • Diagram Tag-Driven Styling - Applies custom colors, line styles, and shapes by mapping user-defined tags to PlantUML style directives.
  • Sketch-Style Rendering - Applies a hand-drawn visual style to diagrams to indicate draft or work-in-progress designs.
  • Tag-Driven Diagram Styling - Implements tag-driven styling that maps user-defined tags to custom colors, shapes, and line styles.

Star history

Star history chart for plantuml-stdlib/c4-plantumlStar history chart for plantuml-stdlib/c4-plantuml

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with C4 PlantUML

These projects share indexed features with C4 PlantUML. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • awslabs/diagram-as-codeawslabs avatar

    awslabs/diagram-as-code

    1,523View on GitHub↗

    This project is a library for generating visual architecture diagrams and network topologies directly from infrastructure-as-code templates and configuration specifications. It functions as a programmatic interface that transforms infrastructure definitions into visual documentation, allowing users to maintain system diagrams as version-controlled text files. The tool distinguishes itself through an automated layout engine that uses graph algorithms to calculate spatial positioning, connection routing, and link paths without manual coordinate configuration. It supports complex visual hierarch

    Goawsdiagram-as-code
    View on GitHub↗1,523
  • likec4/likec4likec4 avatar

    likec4/likec4

    2,723View on GitHub↗

    likec4 is an architecture-as-code framework that transforms text-based architecture definitions into interactive diagrams, static websites, and image files. It serves as a system architecture visualizer and C4 model diagram generator, allowing users to define software components, boundaries, and deployment infrastructure using a domain-specific language. The tool distinguishes itself by providing a modeling environment with Language Server Protocol integration for real-time validation and autocomplete. It enables interactive architecture documentation where users can navigate through hierarch

    TypeScriptarchitecturearchitecture-as-codec4
    View on GitHub↗2,723
  • plantuml/plantumlplantuml avatar

    plantuml/plantuml

    13,093View on GitHub↗

    PlantUML is a text-to-diagram generator that translates human-readable markup into structured graphical representations. It functions as a diagram-as-code tool, allowing users to create and maintain technical documentation, architectural models, and flowcharts by decoupling diagram content from visual layout. The project distinguishes itself through a comprehensive rendering pipeline that processes domain-specific markup into various output formats, including vector and raster graphics. It utilizes a graph-based layout engine to calculate spatial positioning, while a declarative styling layer

    Javadiagramdiagram-as-codediagrams
    View on GitHub↗13,093
  • clientio/jointclientIO avatar

    clientIO/joint

    5,272View on GitHub↗

    Joint is a JavaScript library for building interactive visual diagrams and flowcharts using Scalable Vector Graphics. It provides a programmable environment for creating an interactive SVG canvas with integrated support for zooming, panning, and touch gesture controls. The framework includes a component system for defining custom shapes and programmatic elements within a vector-based coordinate system. It features a JSON-based diagram serializer for saving and loading diagram states, as well as automated layout algorithms and relationship mapping to render nodes and edges. The library covers

    JavaScript
    View on GitHub↗5,272
Compare all 25 related projects→

Frequently asked questions

What does plantuml-stdlib/c4-plantuml do?

C4-PlantUML is a code-driven library that generates C4 model software architecture diagrams from PlantUML source text. It provides a set of reusable macros for creating system context, container, component, and deployment diagrams, enabling architects and developers to describe and communicate software architecture using the C4 model notation directly from diagram-as-code source files.

What are the main features of plantuml-stdlib/c4-plantuml?

The main features of plantuml-stdlib/c4-plantuml are: C4 Architecture Diagrams, Container Diagrams, System Context Diagrams, Component Diagrams, C4 Diagram as Code, C4 Model Documentation, Macro-Based Diagram Generators, PlantUML C4 Extensions.

Which projects share features with plantuml-stdlib/c4-plantuml?

Projects with overlapping indexed features include: awslabs/diagram-as-code — This project is a library for generating visual architecture diagrams and network topologies directly from… likec4/likec4 — likec4 is an architecture-as-code framework that transforms text-based architecture definitions into interactive… plantuml/plantuml — PlantUML is a text-to-diagram generator that translates human-readable markup into structured graphical… clientio/joint — Joint is a JavaScript library for building interactive visual diagrams and flowcharts using Scalable Vector Graphics.… northwoodssoftware/gojs — GoJS is a JavaScript diagramming library and canvas-based visualization engine used to build interactive flowcharts,… mermaid-js/mermaid — This project is a client-side rendering engine that transforms declarative, text-based syntax into visual diagrams…