ER Diagram
Cardinality is the part people get wrong. Write it explicitly.
- Format.puml
- Length36 lines
- Includesnone
The source
36 lines of PlantUML, and needs nothing beyond the bundled engine. Copy it, or open the template inside Gnomon and render it as it is.
@startuml
title Entity Relationship Diagram
entity "User" as user {
* id : INT <<PK>>
--
* email : VARCHAR(255)
* password_hash : VARCHAR(255)
created_at : TIMESTAMP
}
entity "Post" as post {
* id : INT <<PK>>
--
* user_id : INT <<FK>>
* title : VARCHAR(255)
content : TEXT
published : BOOLEAN
created_at : TIMESTAMP
}
entity "Comment" as comment {
* id : INT <<PK>>
--
* post_id : INT <<FK>>
* user_id : INT <<FK>>
content : TEXT
created_at : TIMESTAMP
}
user ||--o{ post : writes
user ||--o{ comment : writes
post ||--o{ comment : has
@endumlRender this offline
This template ships in Gnomon and renders on your machine, with no account and no diagram uploads. The browser editor is free and needs no install.
Others in UML and standard diagrams
- Sequence DiagramThe highest-value diagram in this list. Time runs down; participants across.
- Activity / Flow DiagramEarns its place when there are real branches and joins.
- Use Case DiagramActor-to-goal. Dated, but still the clearest way to show scope boundaries.
- Class DiagramBest used for a single bounded context, not a codebase.
- State DiagramForces the awkward questions about duplicate and out-of-order events.
- Mind MapFor structuring thinking, not for documenting a system.
- Gantt ChartPlans, not architecture, but it renders from text, so it diffs in review.
- JSON VisualizationVisualises a JSON payload: handy in an API design review.
- Work Breakdown StructureWork breakdown. Useful for scoping a piece of delivery.