Skip to content

Commit 5cc8151

Browse files
authored
Update README.md
1 parent 3b1af2e commit 5cc8151

File tree

1 file changed

+87
-2
lines changed

1 file changed

+87
-2
lines changed

README.md

Lines changed: 87 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,92 @@
66

77
A powerful command-line interface for managing Solana Virtual Machines (SVMs) across various networks. Monitor, deploy, and manage your SVM infrastructure with a single tool.
88

9-
![OSVM CLI Dashboard](images/dashboard-screenshot.png)
9+
```mermaid
10+
graph TB
11+
User((User))
12+
13+
subgraph "OSVM CLI System"
14+
subgraph "CLI Interface"
15+
MainCLI["Main CLI<br>Rust/Clap"]
16+
CommandParser["Command Parser<br>Clap"]
17+
18+
subgraph "Core Commands"
19+
SVMCommands["SVM Commands<br>Rust"]
20+
NodeCommands["Node Commands<br>Rust"]
21+
SolanaCommands["Solana Commands<br>Rust"]
22+
RPCCommands["RPC Commands<br>Rust"]
23+
end
24+
end
25+
26+
subgraph "Node Management"
27+
NodeManager["Node Manager<br>Rust"]
28+
29+
subgraph "Node Components"
30+
NodeDB["Node Database<br>JSON"]
31+
NodeMonitor["Node Monitor<br>Rust"]
32+
NodeDashboard["Node Dashboard<br>Ratatui"]
33+
NodeMetrics["Node Metrics<br>Rust"]
34+
NodeLogs["Log Manager<br>Rust"]
35+
end
36+
end
37+
38+
subgraph "SSH Deployment"
39+
SSHManager["SSH Manager<br>SSH2"]
40+
41+
subgraph "Deployment Components"
42+
DeployConfig["Deployment Config<br>Rust"]
43+
DiskManager["Disk Manager<br>Rust"]
44+
ServiceManager["Service Manager<br>Rust"]
45+
HotSwap["Hot Swap Manager<br>Rust"]
46+
Dependencies["Dependency Manager<br>Rust"]
47+
end
48+
end
49+
50+
subgraph "Utilities"
51+
Logger["Logger<br>env_logger"]
52+
Config["Config Manager<br>YAML"]
53+
Dashboard["Dashboard Generator<br>HTML/CSS"]
54+
Examples["Examples Manager<br>Rust"]
55+
end
56+
end
57+
58+
subgraph "External Systems"
59+
SolanaNode["Solana Node<br>Rust"]
60+
RPCNode["RPC Node<br>JSON-RPC"]
61+
RemoteServer["Remote Server<br>Linux"]
62+
end
63+
64+
User -->|Uses| MainCLI
65+
MainCLI -->|Parses| CommandParser
66+
CommandParser -->|Executes| SVMCommands
67+
CommandParser -->|Executes| NodeCommands
68+
CommandParser -->|Executes| SolanaCommands
69+
CommandParser -->|Executes| RPCCommands
70+
71+
NodeCommands -->|Manages| NodeManager
72+
NodeManager -->|Stores| NodeDB
73+
NodeManager -->|Monitors| NodeMonitor
74+
NodeMonitor -->|Displays| NodeDashboard
75+
NodeMonitor -->|Collects| NodeMetrics
76+
NodeManager -->|Manages| NodeLogs
77+
78+
SolanaCommands -->|Deploys| SSHManager
79+
RPCCommands -->|Deploys| SSHManager
80+
SSHManager -->|Uses| DeployConfig
81+
SSHManager -->|Manages| DiskManager
82+
SSHManager -->|Controls| ServiceManager
83+
SSHManager -->|Handles| HotSwap
84+
SSHManager -->|Installs| Dependencies
85+
86+
MainCLI -->|Uses| Logger
87+
MainCLI -->|Reads| Config
88+
NodeDashboard -->|Generates| Dashboard
89+
MainCLI -->|Shows| Examples
90+
91+
SSHManager -->|Connects to| RemoteServer
92+
NodeMonitor -->|Monitors| SolanaNode
93+
NodeMonitor -->|Monitors| RPCNode
94+
```
1095

1196
## ⚡ One-Line Installation
1297

@@ -155,4 +240,4 @@ Contributions are welcome! Please feel free to submit a Pull Request.
155240

156241
## 📄 License
157242

158-
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
243+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

0 commit comments

Comments
 (0)