add img
This commit is contained in:
parent
000ec5d25f
commit
9b4e0f3042
3 changed files with 134 additions and 0 deletions
55
images/README.md
Normal file
55
images/README.md
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
# Architecture Diagrams
|
||||
|
||||
This folder contains visual representations of the studio einszwovier platform architecture.
|
||||
|
||||
## Files
|
||||
|
||||
### `architecture.png`
|
||||
|
||||
High-resolution PNG diagram showing the complete platform architecture including:
|
||||
|
||||
- **Web Platform** - Landing page, About page, Cost calculator
|
||||
- **Services** - BookStack, Open WebUI, JupyterHub, Forgejo, Element Web, Portainer
|
||||
- **Backend** - Synapse Matrix server, Ollama LLM engine, MariaDB database
|
||||
- **Educational Resources** - Drone programming, Git repositories, Documentation
|
||||
- **Storage** - Persistent data for all services
|
||||
- **Infrastructure** - Watchtower auto-updates, Docker network
|
||||
|
||||
**Specifications:**
|
||||
- Resolution: 2400x1600 pixels
|
||||
- Format: PNG with transparent background
|
||||
- Size: ~242 KB
|
||||
- Generated from: `architecture.mmd`
|
||||
|
||||
### `architecture.mmd`
|
||||
|
||||
Source Mermaid diagram file. This is the plain-text definition used to generate the PNG.
|
||||
|
||||
## Regenerating the Diagram
|
||||
|
||||
To regenerate the PNG from the Mermaid source:
|
||||
|
||||
```bash
|
||||
# Install mermaid-cli if needed
|
||||
npm install -g @mermaid-js/mermaid-cli
|
||||
|
||||
# Generate PNG
|
||||
mmdc -i images/architecture.mmd -o images/architecture.png -w 2400 -H 1600 -b transparent
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
The PNG is embedded in the main [README.md](../README.md) file under the "Architecture" section. It provides a visual overview for developers, contributors, and users to understand how all services interconnect.
|
||||
|
||||
## Updating
|
||||
|
||||
When the architecture changes:
|
||||
|
||||
1. Update the Mermaid diagram in [README.md](../README.md)
|
||||
2. Copy the updated diagram to `architecture.mmd`
|
||||
3. Regenerate the PNG using the command above
|
||||
4. Commit both files to git
|
||||
|
||||
---
|
||||
|
||||
**Maintained by studio einszwovier**
|
||||
79
images/architecture.mmd
Normal file
79
images/architecture.mmd
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
graph TB
|
||||
subgraph "studio einszwovier Web Platform"
|
||||
LP[🏠 Landing Page<br/>Port 80]
|
||||
About[ℹ️ About Page<br/>/about]
|
||||
CostCalc[💰 Cost Calculator<br/>/cost]
|
||||
|
||||
LP --> About
|
||||
LP --> CostCalc
|
||||
end
|
||||
|
||||
subgraph "Services Accessible from Landing Page"
|
||||
BookStack[📚 BookStack<br/>Port 6875<br/>Wissenssammlung]
|
||||
OpenWebUI[🤖 Open WebUI<br/>Port 8080<br/>LLM Chatbot]
|
||||
JupyterHub[📓 JupyterHub<br/>Port 8001<br/>Python Notebooks]
|
||||
Forgejo[🦊 Forgejo<br/>Port 3003<br/>Git Server]
|
||||
ElementWeb[💬 Element Web<br/>Port 8082<br/>Matrix Chat]
|
||||
Portainer[🐳 Portainer<br/>Port 9000<br/>Admin Panel]
|
||||
|
||||
LP -.->|Link| BookStack
|
||||
LP -.->|Link| OpenWebUI
|
||||
LP -.->|Link| JupyterHub
|
||||
LP -.->|Link| Forgejo
|
||||
LP -.->|Link| ElementWeb
|
||||
LP -.->|Link| Portainer
|
||||
end
|
||||
|
||||
subgraph "Backend Services"
|
||||
Synapse[📨 Synapse<br/>Port 8008<br/>Matrix Server]
|
||||
Ollama[🔮 Ollama<br/>Port 11434<br/>LLM Engine]
|
||||
MariaDB[(💾 MariaDB<br/>BookStack DB)]
|
||||
|
||||
ElementWeb --> Synapse
|
||||
OpenWebUI --> Ollama
|
||||
BookStack --> MariaDB
|
||||
CostCalc --> Synapse
|
||||
end
|
||||
|
||||
subgraph "Educational Resources"
|
||||
Notebooks[📒 Drone Programming<br/>djitellopy Package]
|
||||
GitRepos[📦 Code Repositories<br/>Project Source]
|
||||
Knowledge[📖 Documentation<br/>Guides & Tutorials]
|
||||
|
||||
JupyterHub --> Notebooks
|
||||
Forgejo --> GitRepos
|
||||
BookStack --> Knowledge
|
||||
end
|
||||
|
||||
subgraph "Persistent Storage"
|
||||
PDFUploads[📁 PDF Files<br/>data/uploads/]
|
||||
CoursesCSV[📋 Courses CSV<br/>data/courses.csv]
|
||||
MatrixData[(🗄️ Matrix Data<br/>matrix/data/)]
|
||||
JupyterVols[(💾 Jupyter Volumes<br/>User Workspaces)]
|
||||
ForgejoData[(📚 Forgejo Data<br/>forgejo/data/)]
|
||||
|
||||
CostCalc --> PDFUploads
|
||||
About --> CoursesCSV
|
||||
Synapse --> MatrixData
|
||||
JupyterHub --> JupyterVols
|
||||
Forgejo --> ForgejoData
|
||||
end
|
||||
|
||||
subgraph "Infrastructure"
|
||||
Watchtower[🔄 Watchtower<br/>Auto-Updates<br/>Every 24h]
|
||||
Network[🌐 einszwovier_network<br/>Docker Network]
|
||||
end
|
||||
|
||||
classDef webapp fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
|
||||
classDef service fill:#fff3e0,stroke:#f57c00,stroke-width:2px
|
||||
classDef backend fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
|
||||
classDef storage fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
|
||||
classDef edu fill:#fce4ec,stroke:#c2185b,stroke-width:2px
|
||||
classDef infra fill:#fafafa,stroke:#616161,stroke-width:2px
|
||||
|
||||
class LP,About,CostCalc webapp
|
||||
class BookStack,OpenWebUI,JupyterHub,Forgejo,ElementWeb,Portainer service
|
||||
class Synapse,Ollama,MariaDB backend
|
||||
class PDFUploads,CoursesCSV,MatrixData,JupyterVols,ForgejoData storage
|
||||
class Notebooks,GitRepos,Knowledge edu
|
||||
class Watchtower,Network infra
|
||||
BIN
images/architecture.png
Normal file
BIN
images/architecture.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 236 KiB |
Loading…
Add table
Add a link
Reference in a new issue