Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
@startuml
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
' uncomment the following line and comment the first to use locally
' !include C4_Container.puml
' LAYOUT_TOP_DOWN()
' LAYOUT_AS_SKETCH()
LAYOUT_WITH_LEGEND()
title Container diagram for a Blogging Website
Person(visitor, Visitor, "A software architect visiting the blog site")
System_Boundary(c1, "A Blogging Platform") {
Container(web_app, "CMS System", "WordPress, PHP", "Provides the blogs' authoring and publishing solution")
Container(cdn, "CDN", "Cloudflare", "Stores static files including images, etc.")
ContainerDb(database, "Database", "mySQL Database", "Stores content of the blogs, theme details, user details, etc.")
}
System_Ext(newsletter_system, "Newsletter", "The system managing generation of a newsletter on need basis.")
System_Ext(webhost, "Web Hosting System", "Hosts and stores all the assets related to blogs")
Rel(visitor, web_app, "Uses", "HTTPS")
Rel(visitor, cdn, "Uses", "HTTPS")
Rel(web_app, webhost, "Uses")
Rel_Neighbor(web_app, cdn, "Stores")
Rel_Neighbor(web_app, newsletter_system, "Generates emails")
Rel(web_app, database, "Uses")
Rel_Back(visitor, newsletter_system, "Sends e-mails to")
@enduml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment