buildzr 0.0.1__py3-none-any.whl → 0.0.3__py3-none-any.whl

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.
buildzr/__about__.py CHANGED
@@ -1 +1 @@
1
- VERSION = "0.0.1"
1
+ VERSION = "0.0.3"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: buildzr
3
- Version: 0.0.1
3
+ Version: 0.0.3
4
4
  Summary: Structurizr for the `buildzr`s 🧱⚒️
5
5
  Project-URL: homepage, https://github.com/amirulmenjeni/buildzr
6
6
  Project-URL: issues, https://github.com/amirulmenjeni/buildzr/issues
@@ -34,13 +34,19 @@ Description-Content-Type: text/markdown
34
34
 
35
35
  If you're not familiar with Structurizr, it is both an open standard (see [Structurizr JSON schema](https://github.com/structurizr/json)) and a [set of tools](https://docs.structurizr.com/usage) for building software architecture diagrams as code. Structurizr derive its architecture modeling paradigm based on the [C4 model](https://c4model.com/), the modeling language for visualizing software architecture.
36
36
 
37
- `buildzr` offers flexible and fluent APIs to write software architecture models based on the C4 model, leveraging the standard Structurizr JSON schema for interoperability with various rendering and authoring tools.
37
+ `buildzr` offers flexible and fluent APIs to write software architecture models,
38
+ leveraging the standard Structurizr JSON schema for interoperability with
39
+ various rendering and authoring tools.
38
40
 
39
41
  # Quick Start 🚀
40
42
 
41
43
  ## Installation
42
44
 
43
- _TODO_
45
+ You can use `pip` to install the `buildzr` package:
46
+
47
+ ```bash
48
+ pip install buildzr
49
+ ```
44
50
 
45
51
  ## Creating a workspace
46
52
 
@@ -117,7 +123,10 @@ with open(os.path.join(os.path.curdir, f"{__file__.split('.')[0]}.json"), 'w', e
117
123
  json.dump(w.model, f, ensure_ascii=False, indent=4, cls=JsonEncoder)
118
124
  ```
119
125
 
120
- That's it 😊!
126
+ Here's a short breakdown on what's happening:
127
+ - In `Workspace(...).contains(...)` method, we define the _static_ C4 models (i.e., `Person`, `SoftwareSystem`, and the `Container`s in the software system).
128
+ - In the `Workspace(...).contains(...).where(...)`, we define the relationships between the C4 models in the workspace. We access the models via the `w` parameter in the `lambda` function, and create the relationships using the `>>` operators.
129
+ - Finally, once we have all the models and their relationships defined, we use (and re-use!) the static models to create multiple views to tell different stories and show various narrative to help document your software architecture.
121
130
 
122
131
  The JSON output can be found [here](examples/system_context_and_container_view.json). You can also try out https://structurizr.com/json to see how this workspace will be rendered.
123
132
 
@@ -131,7 +140,7 @@ The JSON output can be found [here](examples/system_context_and_container_view.j
131
140
 
132
141
  ✅ Writing architecture diagrams in Python allows you to integrate programmability and automation into your software architecture diagramming and documentation workflow.
133
142
 
134
- ✅ Uses the familiar Python programming language to write predicates for including/excluding elements and relationships in views.
143
+ ✅ Uses the familiar Python programming language to write software architecture diagrams!
135
144
 
136
145
  # Contributing
137
146
 
@@ -1,4 +1,4 @@
1
- buildzr/__about__.py,sha256=t_QiCcOQDjV4pl-PMvif1IH68nAKKe0wdeizhaDsDds,17
1
+ buildzr/__about__.py,sha256=I2Vn_6CtMpEXMvSx6Hq-8gFMpQjcK0IEyrty84xCLD0,17
2
2
  buildzr/__init__.py,sha256=hY-cOdjBQcz0v2m8cBF1oEJFIbcR3sWI-xww--0RKSo,99
3
3
  buildzr/dsl/__init__.py,sha256=paxuMCCDuOs1eSvBPyuW5pv5j1UZD6TxRZcCzC2iKss,307
4
4
  buildzr/dsl/dsl.py,sha256=X5lJJhD9dQ7YlRAECdXJb9qJKWfrfi-1H5rESYOnGhI,34584
@@ -14,7 +14,7 @@ buildzr/encoders/encoder.py,sha256=9_FlQ3aYvz0EcN_G9A3bPdqxCTkLhc2OrYXSYti95f8,2
14
14
  buildzr/models/__init__.py,sha256=SRfF7oDVlOOAi6nGKiJIUK6B_arqYLO9iSMp-2IZZps,21
15
15
  buildzr/models/generate.sh,sha256=924UoEXr5WBZ926TZfRgEQGHwBqtLGU5k0G2UfExLEg,1061
16
16
  buildzr/models/models.py,sha256=0LhLG1wmbt4dvROV5MEBZLLoxPbMpkUsOqNz525cynE,42489
17
- buildzr-0.0.1.dist-info/METADATA,sha256=MeUQrhtTNUePTVwRFQn0jdw74IDqV7MIzKoaELGBksE,5573
18
- buildzr-0.0.1.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
19
- buildzr-0.0.1.dist-info/licenses/LICENSE.md,sha256=e8e6W6tL4MbBY-c-gXMgDbaMf_BnaQDQv4Yoy42b-CI,1070
20
- buildzr-0.0.1.dist-info/RECORD,,
17
+ buildzr-0.0.3.dist-info/METADATA,sha256=ZMR0vrJYqT1S1Irlytx0TuxqhJ-2TtOP2_VZr6_h_0I,6255
18
+ buildzr-0.0.3.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
19
+ buildzr-0.0.3.dist-info/licenses/LICENSE.md,sha256=e8e6W6tL4MbBY-c-gXMgDbaMf_BnaQDQv4Yoy42b-CI,1070
20
+ buildzr-0.0.3.dist-info/RECORD,,