system-design 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. system_design-0.1.0/LICENSE +21 -0
  2. system_design-0.1.0/PKG-INFO +205 -0
  3. system_design-0.1.0/README.md +171 -0
  4. system_design-0.1.0/pyproject.toml +60 -0
  5. system_design-0.1.0/setup.cfg +4 -0
  6. system_design-0.1.0/system_design/__init__.py +0 -0
  7. system_design-0.1.0/system_design/ai/__init__.py +0 -0
  8. system_design-0.1.0/system_design/ai/analyzer.py +276 -0
  9. system_design-0.1.0/system_design/ai/prompts.py +83 -0
  10. system_design-0.1.0/system_design/cli/__init__.py +0 -0
  11. system_design-0.1.0/system_design/cli/commands/__init__.py +0 -0
  12. system_design-0.1.0/system_design/cli/commands/ai_analyze.py +106 -0
  13. system_design-0.1.0/system_design/cli/commands/analyze.py +98 -0
  14. system_design-0.1.0/system_design/cli/main.py +79 -0
  15. system_design-0.1.0/system_design/core/__init__.py +0 -0
  16. system_design-0.1.0/system_design/core/config.py +26 -0
  17. system_design-0.1.0/system_design/core/evidence.py +47 -0
  18. system_design-0.1.0/system_design/core/logging.py +22 -0
  19. system_design-0.1.0/system_design/discovery/__init__.py +0 -0
  20. system_design-0.1.0/system_design/discovery/doc_detector.py +67 -0
  21. system_design-0.1.0/system_design/discovery/framework_detector.py +130 -0
  22. system_design-0.1.0/system_design/discovery/language_detector.py +54 -0
  23. system_design-0.1.0/system_design/discovery/models.py +135 -0
  24. system_design-0.1.0/system_design/discovery/package_detector.py +64 -0
  25. system_design-0.1.0/system_design/discovery/scanner.py +158 -0
  26. system_design-0.1.0/system_design/domain/__init__.py +0 -0
  27. system_design-0.1.0/system_design/graph/__init__.py +0 -0
  28. system_design-0.1.0/system_design/graph/builder.py +193 -0
  29. system_design-0.1.0/system_design/graph/schema.py +77 -0
  30. system_design-0.1.0/system_design/graph/serializer.py +25 -0
  31. system_design-0.1.0/system_design/graph/taxonomy.py +77 -0
  32. system_design-0.1.0/system_design/inference/__init__.py +0 -0
  33. system_design-0.1.0/system_design/inference/api_detector.py +112 -0
  34. system_design-0.1.0/system_design/inference/database_detector.py +124 -0
  35. system_design-0.1.0/system_design/inference/dependency_detector.py +178 -0
  36. system_design-0.1.0/system_design/inference/engine.py +95 -0
  37. system_design-0.1.0/system_design/inference/event_detector.py +144 -0
  38. system_design-0.1.0/system_design/inference/service_detector.py +163 -0
  39. system_design-0.1.0/system_design/infrastructure/__init__.py +0 -0
  40. system_design-0.1.0/system_design/plugins/__init__.py +0 -0
  41. system_design-0.1.0/system_design/plugins/base.py +36 -0
  42. system_design-0.1.0/system_design/plugins/registry.py +31 -0
  43. system_design-0.1.0/system_design/structural/__init__.py +0 -0
  44. system_design-0.1.0/system_design/visualization/__init__.py +1 -0
  45. system_design-0.1.0/system_design/visualization/threejs_generator.py +777 -0
  46. system_design-0.1.0/system_design.egg-info/PKG-INFO +205 -0
  47. system_design-0.1.0/system_design.egg-info/SOURCES.txt +49 -0
  48. system_design-0.1.0/system_design.egg-info/dependency_links.txt +1 -0
  49. system_design-0.1.0/system_design.egg-info/entry_points.txt +2 -0
  50. system_design-0.1.0/system_design.egg-info/requires.txt +11 -0
  51. system_design-0.1.0/system_design.egg-info/top_level.txt +1 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Zealous Engineering
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,205 @@
1
+ Metadata-Version: 2.4
2
+ Name: system-design
3
+ Version: 0.1.0
4
+ Summary: system-design — Architecture Intelligence Engine: turn any repo into a 3D architecture graph
5
+ License: MIT
6
+ Project-URL: Homepage, https://github.com/manish-surya/system-design
7
+ Project-URL: Repository, https://github.com/manish-surya/system-design
8
+ Project-URL: Documentation, https://github.com/manish-surya/system-design#readme
9
+ Project-URL: Bug Tracker, https://github.com/manish-surya/system-design/issues
10
+ Keywords: architecture,system-design,knowledge-graph,code-analysis,AI,developer-tools
11
+ Classifier: Development Status :: 2 - Pre-Alpha
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.10
16
+ Classifier: Programming Language :: Python :: 3.11
17
+ Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
19
+ Classifier: Topic :: Software Development :: Quality Assurance
20
+ Requires-Python: >=3.10
21
+ Description-Content-Type: text/markdown
22
+ License-File: LICENSE
23
+ Requires-Dist: typer>=0.12
24
+ Requires-Dist: rich>=13
25
+ Requires-Dist: pydantic>=2.0
26
+ Requires-Dist: networkx>=3.0
27
+ Requires-Dist: tree-sitter>=0.23
28
+ Provides-Extra: dev
29
+ Requires-Dist: pytest>=8; extra == "dev"
30
+ Requires-Dist: pytest-cov; extra == "dev"
31
+ Requires-Dist: ruff; extra == "dev"
32
+ Requires-Dist: mypy; extra == "dev"
33
+ Dynamic: license-file
34
+
35
+ # system-design — Architecture Intelligence Engine
36
+
37
+ **Turn any repository into a living 3D architecture graph**
38
+
39
+ [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://python.org)
40
+ [![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
41
+ [![Status: Alpha](https://img.shields.io/badge/status-alpha-orange.svg)]()
42
+
43
+ ---
44
+
45
+ ## What is system-design?
46
+
47
+ system-design is an **Architecture Intelligence Engine**. Point it at any software repository and it produces:
48
+
49
+ - **Architecture Knowledge Graph** — services, APIs, databases, events, infrastructure as a connected graph
50
+ - **3D Interactive System Design** — a Three.js scene with 3D components on a dark surface, wired & wireless connections
51
+ - **AI Architecture Analysis** — Claude analyzes the codebase and enriches the graph with descriptions, capabilities, domains
52
+ - **Slash Commands for Claude Code** — `/system-design`, `/service-map`, `/data-flow`, `/domain-map`, `/impact-analysis`
53
+
54
+ > *"I just joined this project. How does this system work?"*
55
+ > That question — answered in seconds, not weeks.
56
+
57
+ ---
58
+
59
+ ## Quick Start
60
+
61
+ ```bash
62
+ pip install system-design
63
+
64
+ # Static analysis (no API key needed)
65
+ system-design analyze /path/to/your/repo
66
+ system-design visualize .zea/architecture_graph.json
67
+
68
+ # AI-powered full pipeline
69
+ export ANTHROPIC_API_KEY=your_key_here
70
+ system-design ai-analyze /path/to/your/repo
71
+ open .zea/architecture.html
72
+ ```
73
+
74
+ ---
75
+
76
+ ## The 3D System Design
77
+
78
+ system-design renders architecture as a proper system design scene — not a floating sphere graph:
79
+
80
+ | Element | What it represents |
81
+ |---------|-------------------|
82
+ | Dark surface + grid | Deployment environment |
83
+ | Cubes | Services and backends |
84
+ | Cylinders | Databases and caches |
85
+ | Torus rings | Message queues (Kafka, RabbitMQ, SQS) |
86
+ | Octahedra | Domain events |
87
+ | Wide flat boxes | Frontends and gateways |
88
+ | Spheres | External systems (Stripe, Salesforce) |
89
+ | Tube curves | Wired connections (HTTP calls, DB queries) |
90
+ | Dashed arcs + signal rings | Wireless connections (events, pub-sub) |
91
+
92
+ ---
93
+
94
+ ## Pipeline
95
+
96
+ ```
97
+ Repository
98
+
99
+ Repository Discovery → repository_inventory.json
100
+
101
+ Architecture Inference → architecture_graph.json
102
+
103
+ AI Analysis (Claude) → architecture.json + architecture.md
104
+
105
+ 3D System Design Render → architecture.html
106
+ ```
107
+
108
+ ---
109
+
110
+ ## CLI Commands
111
+
112
+ ```bash
113
+ system-design analyze <repo> # Static scan → graph
114
+ system-design ai-analyze <repo> # Full AI pipeline → 3D design
115
+ system-design visualize <graph.json> # Render 3D HTML from existing graph
116
+ system-design version # Show version
117
+ ```
118
+
119
+ ---
120
+
121
+ ## Output Files
122
+
123
+ | File | Description |
124
+ |------|-------------|
125
+ | `repository_inventory.json` | Languages, frameworks, package managers, infrastructure |
126
+ | `architecture_graph.json` | Full knowledge graph — nodes and edges with evidence |
127
+ | `architecture.json` | AI-enriched analysis — descriptions, capabilities, domains |
128
+ | `architecture.md` | Human-readable system design document |
129
+ | `service-map.json` | Service dependency map |
130
+ | `domain-map.json` | Business domain groupings |
131
+ | `architecture.html` | **3D interactive system design** — open in any browser |
132
+
133
+ ---
134
+
135
+ ## Slash Commands (Claude Code)
136
+
137
+ Copy `skills/claude-code/SKILL.md` → `.claude/skills/system-design/SKILL.md` in your project:
138
+
139
+ | Command | Description |
140
+ |---------|-------------|
141
+ | `/system-design` | Full 3D system design of the current repo |
142
+ | `/service-map` | Service dependencies |
143
+ | `/data-flow` | User → API → Service → Database trace |
144
+ | `/domain-map` | Business domain groupings |
145
+ | `/impact-analysis <component>` | What breaks if this changes? |
146
+ | `/architecture-review` | Coupling, anti-patterns, tech debt |
147
+
148
+ ---
149
+
150
+ ## What system-design Detects
151
+
152
+ **Languages:** Python · TypeScript · JavaScript · Java · Go · C# · Rust · Kotlin · PHP · Ruby
153
+
154
+ **Frameworks:** FastAPI · Django · Flask · Next.js · React · Angular · Vue · Express · NestJS · Spring · Gin · Echo
155
+
156
+ **Infrastructure:** Docker · Kubernetes · Terraform · Helm · GitHub Actions · GitLab CI
157
+
158
+ **Databases:** PostgreSQL · MySQL · MongoDB · Redis · DynamoDB · SQLite · Elasticsearch · Cassandra
159
+
160
+ **Messaging:** Kafka · RabbitMQ · AWS SQS/SNS · NATS · Google Pub/Sub · BullMQ
161
+
162
+ ---
163
+
164
+ ## Benchmark Results
165
+
166
+ | Repository | Nodes | Score |
167
+ |-----------|-------|-------|
168
+ | fastapi (Python) | 109 | **100%** |
169
+ | express (JavaScript) | 40 | **100%** |
170
+ | nest (TypeScript) | 122 | **100%** |
171
+
172
+ ---
173
+
174
+ ## Roadmap
175
+
176
+ | Milestone | Feature | Status |
177
+ |-----------|---------|--------|
178
+ | 0–3 | CLI, Discovery, Graph, Inference | ✅ Done |
179
+ | 3.5 | AI Analysis (Claude API) | ✅ Done |
180
+ | 4–5 | Domain + Infrastructure Intelligence | 🔄 In progress |
181
+ | 6 | 3D System Design Viewer | ✅ Done |
182
+ | 7–10 | Impact Analysis, Reviews, AI Copilot, Digital Twin | ⬜ Planned |
183
+
184
+ ---
185
+
186
+ ## Contributing
187
+
188
+ ```bash
189
+ git clone https://github.com/manish-surya/system-design.git
190
+ cd system-design
191
+ pip install -e ".[dev]"
192
+ pytest
193
+ ```
194
+
195
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for the full guide.
196
+
197
+ ---
198
+
199
+ ## License
200
+
201
+ MIT — see [LICENSE](LICENSE).
202
+
203
+ Built by [manish-surya-r](https://github.com/manish-surya-r) · Zealous Engineering
204
+
205
+ > *"Today Claude understands files. Tomorrow Claude understands systems."*
@@ -0,0 +1,171 @@
1
+ # system-design — Architecture Intelligence Engine
2
+
3
+ **Turn any repository into a living 3D architecture graph**
4
+
5
+ [![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://python.org)
6
+ [![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
7
+ [![Status: Alpha](https://img.shields.io/badge/status-alpha-orange.svg)]()
8
+
9
+ ---
10
+
11
+ ## What is system-design?
12
+
13
+ system-design is an **Architecture Intelligence Engine**. Point it at any software repository and it produces:
14
+
15
+ - **Architecture Knowledge Graph** — services, APIs, databases, events, infrastructure as a connected graph
16
+ - **3D Interactive System Design** — a Three.js scene with 3D components on a dark surface, wired & wireless connections
17
+ - **AI Architecture Analysis** — Claude analyzes the codebase and enriches the graph with descriptions, capabilities, domains
18
+ - **Slash Commands for Claude Code** — `/system-design`, `/service-map`, `/data-flow`, `/domain-map`, `/impact-analysis`
19
+
20
+ > *"I just joined this project. How does this system work?"*
21
+ > That question — answered in seconds, not weeks.
22
+
23
+ ---
24
+
25
+ ## Quick Start
26
+
27
+ ```bash
28
+ pip install system-design
29
+
30
+ # Static analysis (no API key needed)
31
+ system-design analyze /path/to/your/repo
32
+ system-design visualize .zea/architecture_graph.json
33
+
34
+ # AI-powered full pipeline
35
+ export ANTHROPIC_API_KEY=your_key_here
36
+ system-design ai-analyze /path/to/your/repo
37
+ open .zea/architecture.html
38
+ ```
39
+
40
+ ---
41
+
42
+ ## The 3D System Design
43
+
44
+ system-design renders architecture as a proper system design scene — not a floating sphere graph:
45
+
46
+ | Element | What it represents |
47
+ |---------|-------------------|
48
+ | Dark surface + grid | Deployment environment |
49
+ | Cubes | Services and backends |
50
+ | Cylinders | Databases and caches |
51
+ | Torus rings | Message queues (Kafka, RabbitMQ, SQS) |
52
+ | Octahedra | Domain events |
53
+ | Wide flat boxes | Frontends and gateways |
54
+ | Spheres | External systems (Stripe, Salesforce) |
55
+ | Tube curves | Wired connections (HTTP calls, DB queries) |
56
+ | Dashed arcs + signal rings | Wireless connections (events, pub-sub) |
57
+
58
+ ---
59
+
60
+ ## Pipeline
61
+
62
+ ```
63
+ Repository
64
+
65
+ Repository Discovery → repository_inventory.json
66
+
67
+ Architecture Inference → architecture_graph.json
68
+
69
+ AI Analysis (Claude) → architecture.json + architecture.md
70
+
71
+ 3D System Design Render → architecture.html
72
+ ```
73
+
74
+ ---
75
+
76
+ ## CLI Commands
77
+
78
+ ```bash
79
+ system-design analyze <repo> # Static scan → graph
80
+ system-design ai-analyze <repo> # Full AI pipeline → 3D design
81
+ system-design visualize <graph.json> # Render 3D HTML from existing graph
82
+ system-design version # Show version
83
+ ```
84
+
85
+ ---
86
+
87
+ ## Output Files
88
+
89
+ | File | Description |
90
+ |------|-------------|
91
+ | `repository_inventory.json` | Languages, frameworks, package managers, infrastructure |
92
+ | `architecture_graph.json` | Full knowledge graph — nodes and edges with evidence |
93
+ | `architecture.json` | AI-enriched analysis — descriptions, capabilities, domains |
94
+ | `architecture.md` | Human-readable system design document |
95
+ | `service-map.json` | Service dependency map |
96
+ | `domain-map.json` | Business domain groupings |
97
+ | `architecture.html` | **3D interactive system design** — open in any browser |
98
+
99
+ ---
100
+
101
+ ## Slash Commands (Claude Code)
102
+
103
+ Copy `skills/claude-code/SKILL.md` → `.claude/skills/system-design/SKILL.md` in your project:
104
+
105
+ | Command | Description |
106
+ |---------|-------------|
107
+ | `/system-design` | Full 3D system design of the current repo |
108
+ | `/service-map` | Service dependencies |
109
+ | `/data-flow` | User → API → Service → Database trace |
110
+ | `/domain-map` | Business domain groupings |
111
+ | `/impact-analysis <component>` | What breaks if this changes? |
112
+ | `/architecture-review` | Coupling, anti-patterns, tech debt |
113
+
114
+ ---
115
+
116
+ ## What system-design Detects
117
+
118
+ **Languages:** Python · TypeScript · JavaScript · Java · Go · C# · Rust · Kotlin · PHP · Ruby
119
+
120
+ **Frameworks:** FastAPI · Django · Flask · Next.js · React · Angular · Vue · Express · NestJS · Spring · Gin · Echo
121
+
122
+ **Infrastructure:** Docker · Kubernetes · Terraform · Helm · GitHub Actions · GitLab CI
123
+
124
+ **Databases:** PostgreSQL · MySQL · MongoDB · Redis · DynamoDB · SQLite · Elasticsearch · Cassandra
125
+
126
+ **Messaging:** Kafka · RabbitMQ · AWS SQS/SNS · NATS · Google Pub/Sub · BullMQ
127
+
128
+ ---
129
+
130
+ ## Benchmark Results
131
+
132
+ | Repository | Nodes | Score |
133
+ |-----------|-------|-------|
134
+ | fastapi (Python) | 109 | **100%** |
135
+ | express (JavaScript) | 40 | **100%** |
136
+ | nest (TypeScript) | 122 | **100%** |
137
+
138
+ ---
139
+
140
+ ## Roadmap
141
+
142
+ | Milestone | Feature | Status |
143
+ |-----------|---------|--------|
144
+ | 0–3 | CLI, Discovery, Graph, Inference | ✅ Done |
145
+ | 3.5 | AI Analysis (Claude API) | ✅ Done |
146
+ | 4–5 | Domain + Infrastructure Intelligence | 🔄 In progress |
147
+ | 6 | 3D System Design Viewer | ✅ Done |
148
+ | 7–10 | Impact Analysis, Reviews, AI Copilot, Digital Twin | ⬜ Planned |
149
+
150
+ ---
151
+
152
+ ## Contributing
153
+
154
+ ```bash
155
+ git clone https://github.com/manish-surya/system-design.git
156
+ cd system-design
157
+ pip install -e ".[dev]"
158
+ pytest
159
+ ```
160
+
161
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for the full guide.
162
+
163
+ ---
164
+
165
+ ## License
166
+
167
+ MIT — see [LICENSE](LICENSE).
168
+
169
+ Built by [manish-surya-r](https://github.com/manish-surya-r) · Zealous Engineering
170
+
171
+ > *"Today Claude understands files. Tomorrow Claude understands systems."*
@@ -0,0 +1,60 @@
1
+ [build-system]
2
+ requires = ["setuptools>=68", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "system-design"
7
+ version = "0.1.0"
8
+ description = "system-design — Architecture Intelligence Engine: turn any repo into a 3D architecture graph"
9
+ readme = "README.md"
10
+ license = {text = "MIT"}
11
+ requires-python = ">=3.10"
12
+ keywords = ["architecture", "system-design", "knowledge-graph", "code-analysis", "AI", "developer-tools"]
13
+ classifiers = [
14
+ "Development Status :: 2 - Pre-Alpha",
15
+ "Intended Audience :: Developers",
16
+ "License :: OSI Approved :: MIT License",
17
+ "Programming Language :: Python :: 3",
18
+ "Programming Language :: Python :: 3.10",
19
+ "Programming Language :: Python :: 3.11",
20
+ "Programming Language :: Python :: 3.12",
21
+ "Topic :: Software Development :: Libraries :: Python Modules",
22
+ "Topic :: Software Development :: Quality Assurance",
23
+ ]
24
+
25
+ dependencies = [
26
+ "typer>=0.12",
27
+ "rich>=13",
28
+ "pydantic>=2.0",
29
+ "networkx>=3.0",
30
+ "tree-sitter>=0.23",
31
+ ]
32
+
33
+ [project.urls]
34
+ Homepage = "https://github.com/manish-surya/system-design"
35
+ Repository = "https://github.com/manish-surya/system-design"
36
+ Documentation = "https://github.com/manish-surya/system-design#readme"
37
+ "Bug Tracker" = "https://github.com/manish-surya/system-design/issues"
38
+
39
+ [project.scripts]
40
+ system-design = "system_design.cli.main:app"
41
+
42
+ [project.optional-dependencies]
43
+ dev = [
44
+ "pytest>=8",
45
+ "pytest-cov",
46
+ "ruff",
47
+ "mypy",
48
+ ]
49
+
50
+ [tool.setuptools.packages.find]
51
+ where = ["."]
52
+ include = ["system_design*"]
53
+
54
+ [tool.ruff]
55
+ target-version = "py312"
56
+ line-length = 100
57
+
58
+ [tool.mypy]
59
+ python_version = "3.12"
60
+ strict = true
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
File without changes
File without changes