랭킹으로 돌아가기

plantuml/plantuml

Javaplantuml.com

Generate diagrams from textual description

diagramdiagram-as-codediagramsdiagrams-as-codejavaplantumlumluml-diagram
스타 성장
스타
13.2k
포크
1.2k
주간 성장
이슈
582
5k10k
2011년 11월2016년 9월2021년 8월2026년 7월
아티팩트Mavengit clone https://github.com/plantuml/plantuml.git
README

[!TIP] 🧩 New! Render PlantUML diagrams directly inside GitHub with our official browser extension — No server. No tokens. No tracking. Zero permissions but clipboard.

Add to Chrome Add to Firefox

💬 Want native PlantUML support in GitHub? Upvote and join the discussion: Support for PlantUML diagrams

[!TIP] 🤖 New! Give your AI assistant the power to render and check PlantUML diagrams with @plantuml/mcp-js — a pure Node.js MCP server. No Java. No server. Just npx @plantuml/mcp-js.

npm version npm downloads

🌱 PlantUML

Generate UML diagrams from textual descriptions.

Discord server GitHub Sponsors GitHub Org's stars GitHub watchers GitHub contributors GitHub forks GitHub all releases

Release (latest by date) Release Date GitHub commits since latest release (by date) javadoc

Pre-release (latest by date) Pre-release Date GitHub last commit CI snapshot javadoc snapshot jacoco SonarQube Cloud

Dev Project Pages index Ask DeepWiki

JavaScript Demo

ℹ️ About

PlantUML is a component that allows you to create various UML diagrams through simple textual descriptions. From sequence diagrams to deployment diagrams and beyond, PlantUML provides an easy way to create visual representations of complex systems.

🗃️ Supported Diagram Types

📣 Additional Features

📖 Learn More

For a more detailed overview, visit PlantUML Official Website.

🛡 Security

See Security Policy and Security overview.

[!IMPORTANT] PlantUML is not affected by the log4j vulnerability.

🚀 Getting Started

Whether you're looking to use PlantUML as a standalone application or as a component in your own project, getting started is simple. Check out the official PlantUML setup guide for instructions on how to set up PlantUML on your system.

⚙️ Building from Source

To build PlantUML from source, you have two options:

  1. Using Gradle: ./gradlew jar
  2. Using Ant: ant

For prerequisites and detailed build instructions, see our BUILDING.md guide.

🌐 Building for the Browser (TeaVM)

PlantUML can be compiled to JavaScript with TeaVM to run entirely client-side in the browser, with no server required. To produce the JavaScript artifacts and use them in your own project:

git clone https://github.com/plantuml/plantuml.git
cd plantuml
chmod +x ./gradlew
./gradlew clean teavm -Pfast
cp ./build/generated/teavm/js/plantuml.js $YOUR_PROJECT/plantuml.js
cp ./build/generated/teavm/js/viz-global.js $YOUR_PROJECT/viz-global.js

The -Pfast flag skips the slow parts of a regular build (tests, Javadoc, JaCoCo) so you only get the TeaVM output. The viz-global.js file provides Viz.js (Graphviz) support for diagrams that rely on Dot layout.

The teavm task also copies the PlantUML stdlib bundles and a ready-to-use index.html demo into ./build/generated/teavm/js/.

For a live example of client-side rendering, see the JavaScript PlantUML Demo.

🧱 Contributing

PlantUML is an open-source project, and we welcome contributions of all kinds. Whether you're helping us fix bugs, improve the docs, or spread the word, we appreciate your support. See our contributing guide for more information on how to get started.

For comprehensive and detailed documentation on using PlantUML, refer to the official Javadoc, available here. Please note that this documentation is a work in progress and may not be complete.

🧑‍🤝‍🧑 Support and Community

📃 License

PlantUML is licensed under several licenses; you can choose the one that suits you best:

For more information, please refer to the PlantUML license FAQ to help determine which license is appropriate for your use case.

관련 저장소
tldraw/tldraw

Build infinite canvas apps in React with the tldraw SDK. World's best, top-most agent recommended #1 five star SDK.

TypeScriptnpmOtherdrawingsketch
tldraw.dev
49.1k3.4k
mingrammer/diagrams

:art: Diagram as Code for prototyping cloud system architectures

PythonPyPIMIT Licensediagramdiagram-as-code
diagrams.mingrammer.com
42.4k2.7k
didi/LogicFlow

A flow chart editing framework focus on business customization. 专注于业务自定义的流程图编辑框架,支持实现脑图、ER图、UML、工作流等各种图编辑场景。

TypeScriptnpmApache License 2.0flowchartgraph
logicflow.cn
11.5k1.4k
hediet/vscode-drawio

This unofficial extension integrates Draw.io (also known as diagrams.net) into VS Code.

TypeScriptnpmGNU General Public License v3.0hacktoberfestvscode-extension
marketplace.visualstudio.com/items
9.5k466
projectstorm/react-diagrams

a super simple, no-nonsense diagramming library written in react that just works

TypeScriptnpmMIT Licensereactdemo
projectstorm.cloud/react-diagrams
9.4k1.2k
adrai/flowchart.js

Draws simple SVG flow chart diagrams from textual representation of the diagram

JavaScriptnpmMIT Licenseflowchartdiagram
flowchart.js.org
8.7k1.2k
NorthwoodsSoftware/GoJS

JavaScript diagramming library for interactive flowcharts, org charts, design tools, planning tools, visual languages.

HTMLOtherhtmldiagram
gojs.net
8.5k2.8k
bytedance/flowgram.ai

FlowGram is an extensible workflow development framework with built-in canvas, form, variable, and materials that helps developers build AI workflow platforms faster and simpler.

TypeScriptnpmMIT Licenseflowflowchart
flowgram.ai
8.2k741
jsplumb/jsplumb

Visual connectivity for webapps

diagramsvg
jsplumbtoolkit.com
7.8k1.4k
plantuml-stdlib/C4-PlantUML

C4-PlantUML combines the benefits of PlantUML and the C4 model for providing a simple way of describing and communicate software architectures

PlantUMLMIT Licenseplantumlc4model
7.4k1.2k
jgraph/drawio

draw.io is a JavaScript, client-side editor for general diagramming.

JavaScriptnpmApache License 2.0diagramjavascript
drawio.com
6.9k1.1k
antvis/X6

🚀 JavaScript diagramming library that uses SVG and HTML for rendering.

TypeScriptnpmMIT Licensediagramminggraph
x6.antv.antgroup.com
6.6k1.9k