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)
65 lines
1.6 KiB
Plaintext
65 lines
1.6 KiB
Plaintext
digraph SlackVein {
|
|
rankdir=LR;
|
|
compound=true;
|
|
fontname="Helvetica";
|
|
node [fontname="Helvetica", fontsize=11, shape=box, style="rounded,filled"];
|
|
edge [fontname="Helvetica", fontsize=10];
|
|
|
|
labelloc="t";
|
|
label="Slack Vein - API Flow";
|
|
fontsize=16;
|
|
|
|
// Client
|
|
subgraph cluster_client {
|
|
label="Soleprint";
|
|
style=filled;
|
|
color="#E8F5E9";
|
|
fillcolor="#E8F5E9";
|
|
|
|
app [label="Application", fillcolor="#C8E6C9"];
|
|
vein [label="Slack Vein\n(artery/veins/slack)", fillcolor="#A5D6A7"];
|
|
}
|
|
|
|
// Auth
|
|
subgraph cluster_auth {
|
|
label="Authentication";
|
|
style=filled;
|
|
color="#FFF8E1";
|
|
fillcolor="#FFF8E1";
|
|
|
|
token [label="Bot Token\n(Bearer)", fillcolor="#FFECB3"];
|
|
}
|
|
|
|
// Slack API
|
|
subgraph cluster_slack {
|
|
label="Slack API";
|
|
style=filled;
|
|
color="#E3F2FD";
|
|
fillcolor="#E3F2FD";
|
|
|
|
chat [label="chat.postMessage", fillcolor="#BBDEFB"];
|
|
channels [label="conversations.list", fillcolor="#BBDEFB"];
|
|
users [label="users.list", fillcolor="#BBDEFB"];
|
|
files [label="files.upload", fillcolor="#BBDEFB"];
|
|
}
|
|
|
|
// Webhooks
|
|
subgraph cluster_webhooks {
|
|
label="Incoming";
|
|
style=dashed;
|
|
color=gray;
|
|
|
|
webhook [label="Webhook URL", fillcolor="#F5F5F5"];
|
|
}
|
|
|
|
// Flow
|
|
app -> vein [label="send_message()"];
|
|
vein -> token [label="auth"];
|
|
token -> chat [label="POST"];
|
|
token -> channels [label="GET"];
|
|
token -> users [label="GET"];
|
|
token -> files [label="POST"];
|
|
|
|
vein -> webhook [label="simple post", style=dashed];
|
|
}
|