Skip to content

Commit 5c4fdd6

Browse files
committed
ATR-18 Moved structurizr docs
1 parent d1f8090 commit 5c4fdd6

File tree

5 files changed

+165
-1
lines changed

5 files changed

+165
-1
lines changed

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
11
/site
2-
.DS_Store
2+
**/.DS_Store
3+
/workspace.json
4+
/.structurizr
5+
/.vscode/settings.json

compose.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
services:
2+
structurizr_lite:
3+
image: structurizr/lite:latest
4+
container_name: ng2r-structurizr-lite
5+
restart: always
6+
volumes:
7+
- ./docs:/usr/local/structurizr
8+
ports:
9+
- 9000:8080

docs/.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
/workspace.json
2+
/.structurizr
3+
/.vscode/settings.json

docs/structurizr.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#structurizr.editable=false

docs/workspace.dsl

Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
workspace "ng2react" "A tool that converts AngularJS components to React using OpenAI API" {
2+
!docs .
3+
model {
4+
openAiApi = softwareSystem "OpenAI" "Public API for generative AI" "External"
5+
6+
ng2react = softwareSystem "ng2react" "IDE Plugin" {
7+
feedbackApi = container "@ng2react/feedback" "API for submitting feedback from the IDE plugin" {
8+
feedbackDatabase = component "Feedback Database" "A database for storing feedback data"
9+
feedbackRestService = component "Feedback Service" "Handles communication between the API and the database" "OpenAPI" {
10+
feedbackRestService -> feedbackDatabase "Stores/Retrieves feedback"
11+
}
12+
feedbackViewer = component "Feedback Analysis Client" "A client for reviewing submitted feedback" {
13+
this -> feedbackRestService "Retrieves feedback"
14+
}
15+
}
16+
17+
ng2react_core = container "@ng2react/core" "Main Ng2React API" "NodeJS" {
18+
typescript = component "Typescript" "AST Parsing" "JavaScript" "External"
19+
ng2react_core_component = component "@ng2react/core" "Core business logic" "JavaScript" {
20+
this -> typescript "Uses"
21+
this -> openAiApi "Uses"
22+
}
23+
}
24+
25+
ide_nodejs = container "NodeJS IDE" "IDEs that support JavaScript plugins" "IDE" {
26+
ng2react_vscode = component "@ng2react/vscode" "VSCode IDE Plugin" "JavaScript" {
27+
this -> ng2react_core_component "Uses"
28+
this -> feedbackRestService "Sends anlysis to"
29+
}
30+
}
31+
32+
ng2react_cli = container "@ng2react/cli" "Command line interface for ng2react" "stdio" {
33+
typescript_cli = component "Typescript" "AST Parsing" "JavaScript" "External"
34+
ng2react_core_component_cli = component "@ng2react/core" "Core business logic" "JavaScript" {
35+
this -> typescript_cli "Uses"
36+
this -> openAiApi "Uses"
37+
}
38+
ng2react_cli_component = component "@ng2react/cli" "Command line interface for ng2react" "JavaScript" {
39+
this -> ng2react_core_component_cli "Uses"
40+
}
41+
}
42+
43+
ng2react_ide_generic = container "Generic IDE" "IDEs without native JavaScript support" "IntelliJ, Eclipse, NeoVim, etc." {
44+
ng2react_intellij = component "@ng2react/intellij" "IntelliJ Plugin" "Kotlin" "Proposed" {
45+
this -> ng2react_cli_component "Uses"
46+
}
47+
ng2react_neovim = component "@ng2react/NeoVim" "NeoVim Plugin" "Lua" "Proposed" {
48+
this -> ng2react_cli_component "Uses"
49+
}
50+
ng2react_eclipse = component "@ng2react/eclipse" "Eclipse Plugin" "Java" "Proposed" {
51+
this -> ng2react_cli_component "Uses"
52+
}
53+
}
54+
}
55+
56+
product_contributor = person "Developer/Analist" "A contributor to the ng2react software system." {
57+
this -> feedbackViewer "Analyses data from"
58+
}
59+
60+
generic_ide_user = person "User" "AngularJS/React developer who wants to convert AngularJS components to React" {
61+
this -> ide_nodejs "Uses"
62+
this -> ng2react_ide_generic "Uses"
63+
}
64+
65+
deploymentEnvironment "Live" {
66+
deploymentNode "Developer Laptop" "" "Microsoft Windows 10 or Apple macOS" {
67+
deploymentNode "IDE" "" "An integrated development environment with ng2react plugin support" {
68+
plugin = containerInstance ide_nodejs
69+
}
70+
}
71+
deploymentNode "Remote Server" "" "Feedback API" "" {
72+
deploymentNode "FeedbackAPI" "" "" {
73+
// softwareSystemInstance feedbackApi
74+
server = containerInstance feedbackApi
75+
76+
}
77+
}
78+
}
79+
}
80+
81+
views {
82+
systemContext ng2react "SystemContext" {
83+
include *
84+
autoLayout
85+
}
86+
87+
container ng2react "IDE_Containers" {
88+
include *
89+
autoLayout lr
90+
}
91+
92+
container ng2react "IDE_Containers_VSCode" {
93+
include *
94+
exclude ng2react_ide_generic ng2react_cli
95+
autoLayout
96+
}
97+
98+
container ng2react "IDE_Containers_Generic" {
99+
include *
100+
exclude ng2react_vscode feedbackApi ide_nodejs product_contributor ng2react_core
101+
autoLayout
102+
}
103+
104+
105+
component ng2react_ide_generic "Generic_IDE_Plugins" {
106+
include *
107+
autoLayout lr
108+
}
109+
110+
component ide_nodejs "NodeJS_IDE_Plugins" {
111+
include *
112+
autoLayout lr
113+
}
114+
115+
component ng2react_core "Ng2React_Core" {
116+
include *
117+
autoLayout lr
118+
}
119+
120+
component ng2react_cli "Ng2React_CLI" {
121+
include *
122+
autoLayout lr
123+
}
124+
125+
component feedbackApi "Feedback_API" {
126+
include *
127+
autoLayout lr
128+
}
129+
130+
deployment ng2react "Live" {
131+
include *
132+
autoLayout
133+
description "An example development deployment scenario for the Internet Banking System."
134+
}
135+
136+
theme default
137+
138+
styles {
139+
element "External" {
140+
background #aaaaaa
141+
}
142+
143+
element "Proposed" {
144+
background #b7e1cd
145+
146+
}
147+
}
148+
}

0 commit comments

Comments
 (0)