Project

General

Profile

Actions

Technical Architecture

Architecture

Kusala Tech Architecture

PlantUML Code
@startuml Kusala_Tech_Architecture
!theme aws-orange

skinparam monochrome true
skinparam defaultFontName Helvetica
skinparam shadowing false

' === Components ===
rectangle "DNS & Email" as dns {
  rectangle "name.com" as name_dns #aliceblue
  rectangle "Titan Mail" as titan #aliceblue
  name_dns -[hidden]-> titan
}

rectangle "Hosting" as hosting {
  rectangle "Linode VPS\n(foss-dev)" as linode_vps #moccasin {
    rectangle "Docker" as docker {
      rectangle "Traefik" as traefik #lightgreen
      rectangle "Redmine" as redmine #lightgreen
      rectangle "Certbot" as certbot #lightgreen
      traefik -[hidden]-> redmine
      redmine -[hidden]-> certbot
    }
  }
  rectangle "Linode LKS\n(future)" as linode_lks #moccasin
  linode_vps -[hidden]-> linode_lks
}

rectangle "Security" as security {
  rectangle "KeePassXC" as keepass #mistyrose {
    rectangle "WebDAV Sync\n(self-signed cert)" as webdav #lightgrey
  }
}

' === Connections ===
name_dns --> titan : "email@kusala.studio\n(IMAP/SMTP manual config)"
titan --> linode_vps : "Admin notifications"
linode_vps --> name_dns : "DNS records"

linode_vps --> keepass : "Credential storage"
webdav --> linode_vps : "Password sync"

' === Legend/Notes ===
note right of linode_vps
  • Single point of failure
  • Minimal functional phase
  • Limited budget constraints
end note

note right of titan
  • IMAP: imap.titan.email
  • SMTP: smtp.titan.email
  • Requires manual config
end note

note bottom of security
  • KeePassXC database
  • Sync via WebDAV
  • Currently self-signed cert
end note

@enduml

AI Request (TODO - find a way to standardize AI prompts):

Help me create a PlantUML diagram to reflect the current status of the architecture for Kusala Tech.

Context:

  • name.com for NS (kusala.studio)

  • email on Titan Mail (service of name.com)

  • Linode VPS (foss-dev)

    • Note: this is a single point of failure, but there is not anything currently highly critical, and we are in minimal functional phase with limited to no budget.

    • Docker

      • Traefik
      • Redmine
      • Certbot will be configured for TLS
  • KeepassXC for password management

    • Sync over WebDAV

      • Tested - works nicely (currently self-signed cert)
  • Linode LKS (for later migration if necessary)

Updated by Kusala Tech 1 day ago · 9 revisions