docs: add architecture and veins documentation
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
- System overview, artery hierarchy, build flow, room config diagrams - Veins docs: Jira, Slack, Google OAuth - Shunts docs: MercadoPago mock - DOT source files with generated SVGs - HTML viewers with navigation and full-screen mode Solves: - Freelance work standardization - Missing infrastructure replication (shunts) - Reliable testing environment (BDD -> Gherkin -> Tests)
This commit is contained in:
102
docs/architecture/01-system-overview.dot
Normal file
102
docs/architecture/01-system-overview.dot
Normal file
@@ -0,0 +1,102 @@
|
||||
digraph SystemOverview {
|
||||
// Graph settings
|
||||
rankdir=TB;
|
||||
compound=true;
|
||||
fontname="Helvetica";
|
||||
node [fontname="Helvetica", fontsize=11];
|
||||
edge [fontname="Helvetica", fontsize=10];
|
||||
|
||||
// Title
|
||||
labelloc="t";
|
||||
label="Soleprint - System Overview";
|
||||
fontsize=16;
|
||||
|
||||
// Styling
|
||||
node [shape=box, style="rounded,filled"];
|
||||
|
||||
// Core Hub
|
||||
subgraph cluster_soleprint {
|
||||
label="Soleprint Hub (port 12000)";
|
||||
style=filled;
|
||||
color="#E8F5E9";
|
||||
fillcolor="#E8F5E9";
|
||||
|
||||
hub [label="Soleprint\nCore Coordinator", fillcolor="#C8E6C9", shape=box];
|
||||
}
|
||||
|
||||
// Artery System
|
||||
subgraph cluster_artery {
|
||||
label="Artery - Todo lo vital";
|
||||
style=filled;
|
||||
color="#FFEBEE";
|
||||
fillcolor="#FFEBEE";
|
||||
|
||||
veins [label="Veins\n(Stateless Connectors)", fillcolor="#FFCDD2"];
|
||||
shunts [label="Shunts\n(Mock Connectors)", fillcolor="#FFCDD2"];
|
||||
pulses [label="Pulses\n(Composed Flows)", fillcolor="#EF9A9A"];
|
||||
plexus [label="Plexus\n(Full Apps)", fillcolor="#E57373"];
|
||||
}
|
||||
|
||||
// Atlas System
|
||||
subgraph cluster_atlas {
|
||||
label="Atlas - Documentacion accionable";
|
||||
style=filled;
|
||||
color="#E3F2FD";
|
||||
fillcolor="#E3F2FD";
|
||||
|
||||
books [label="Books\n(Documentation)", fillcolor="#BBDEFB"];
|
||||
templates [label="Templates\n(Patterns)", fillcolor="#BBDEFB"];
|
||||
depots [label="Depots\n(External Docs)", fillcolor="#90CAF9"];
|
||||
}
|
||||
|
||||
// Station System
|
||||
subgraph cluster_station {
|
||||
label="Station - Centro de control";
|
||||
style=filled;
|
||||
color="#FFF8E1";
|
||||
fillcolor="#FFF8E1";
|
||||
|
||||
tools [label="Tools\n(modelgen, tester, datagen)", fillcolor="#FFECB3"];
|
||||
monitors [label="Monitors\n(databrowse)", fillcolor="#FFECB3"];
|
||||
}
|
||||
|
||||
// External
|
||||
subgraph cluster_external {
|
||||
label="External Services";
|
||||
style=dashed;
|
||||
color=gray;
|
||||
|
||||
jira [label="Jira", fillcolor="#E8EAF6"];
|
||||
slack [label="Slack", fillcolor="#E8EAF6"];
|
||||
google [label="Google", fillcolor="#E8EAF6"];
|
||||
mercadopago [label="MercadoPago", fillcolor="#E8EAF6"];
|
||||
}
|
||||
|
||||
// Managed Room
|
||||
subgraph cluster_room {
|
||||
label="Managed Room (e.g., AMAR)";
|
||||
style=dashed;
|
||||
color="#7B1FA2";
|
||||
|
||||
room_backend [label="Backend\n(Django/FastAPI)", fillcolor="#E1BEE7"];
|
||||
room_frontend [label="Frontend\n(Next.js)", fillcolor="#E1BEE7"];
|
||||
room_db [label="Database\n(PostgreSQL)", fillcolor="#CE93D8", shape=cylinder];
|
||||
}
|
||||
|
||||
// Connections
|
||||
hub -> veins [label="routes"];
|
||||
hub -> books [label="routes"];
|
||||
hub -> tools [label="routes"];
|
||||
|
||||
veins -> jira [label="API"];
|
||||
veins -> slack [label="API"];
|
||||
veins -> google [label="OAuth"];
|
||||
shunts -> mercadopago [label="mock", style=dashed];
|
||||
|
||||
veins -> pulses [label="compose"];
|
||||
pulses -> plexus [label="extend"];
|
||||
|
||||
tools -> room_backend [label="test", style=dashed];
|
||||
monitors -> room_db [label="browse", style=dashed];
|
||||
depots -> room_backend [label="docs", style=dashed];
|
||||
}
|
||||
Reference in New Issue
Block a user