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

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 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·7 vues

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.

Historique des stars

Graphique de l'historique des stars pour plantuml-stdlib/c4-plantumlGraphique de l'historique des stars pour plantuml-stdlib/c4-plantuml

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait plantuml-stdlib/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.

Quelles sont les fonctionnalités principales de plantuml-stdlib/c4-plantuml ?

Les fonctionnalités principales de plantuml-stdlib/c4-plantuml sont : C4 Architecture Diagrams, Container Diagrams, System Context Diagrams, Component Diagrams, C4 Diagram as Code, C4 Model Documentation, Macro-Based Diagram Generators, PlantUML C4 Extensions.

Quelles sont les alternatives open-source à plantuml-stdlib/c4-plantuml ?

Les alternatives open-source à plantuml-stdlib/c4-plantuml incluent : 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…

Alternatives open source à C4 PlantUML

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec C4 PlantUML.
  • awslabs/diagram-as-codeAvatar de awslabs

    awslabs/diagram-as-code

    1,523Voir sur 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
    Voir sur GitHub↗1,523
  • likec4/likec4Avatar de likec4

    likec4/likec4

    2,723Voir sur 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
    Voir sur GitHub↗2,723
  • plantuml/plantumlAvatar de plantuml

    plantuml/plantuml

    13,093Voir sur 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
    Voir sur GitHub↗13,093
  • clientio/jointAvatar de clientIO

    clientIO/joint

    5,272Voir sur 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
    Voir sur GitHub↗5,272
  • Voir les 25 alternatives à C4 PlantUML→