Skip to content

Commit 5e7b0b0

Browse files
Putting diagrams into separate collection for reuse and perm urls wit… (#63)
* Putting diagrams into separate collection for reuse and perm urls without formatting. * add other aws icon source, works remote, but not in vs preview. * locally host the aws icon pack.
1 parent 5493f7d commit 5e7b0b0

14 files changed

Lines changed: 4587 additions & 176 deletions

File tree

docs/_config.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ collections:
3131
notify-repos:
3232
output: true
3333
sort_by: order
34+
diagrams:
35+
output: true
36+
sort_by: order
3437

3538

3639
# Build settings
@@ -97,7 +100,6 @@ defaults:
97100
layout: "page"
98101
is_not_draft: false
99102
parent: Schemas
100-
101103
owner: NHS Notify
102104
author: NHS Notify
103105
last_modified_date: 2025-01-01
@@ -110,6 +112,15 @@ defaults:
110112
owner: NHS Notify
111113
author: NHS Notify
112114
last_modified_date: 2025-01-01
115+
- scope:
116+
path: ""
117+
type: "diagrams"
118+
values:
119+
layout: "diagram"
120+
is_not_draft: false
121+
owner: NHS Notify
122+
author: NHS Notify
123+
last_modified_date: 2025-01-01
113124

114125
# Exclude from processing.
115126
# The following items will not be processed, by default.

docs/_includes/diagram.html

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{% assign diagram = site.diagrams
2+
| where_exp:"diagram", "diagram.title == include.title"
3+
| first %}
4+
5+
[{{ diagram.url |relative_url }}]({{ diagram.url |relative_url }})
6+
{{ diagram.content | markdownify }}

docs/_layouts/diagram.html

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
layout: table_wrappers
3+
---
4+
5+
<!DOCTYPE html>
6+
7+
<html lang="{{ site.lang | default: 'en-US' }}">
8+
{% include head.html %}
9+
{% include nhs-notify-head.html %}
10+
11+
<body>
12+
{{ content }}
13+
</body>
14+
15+
</html>

docs/architecture/c4/index.md

Lines changed: 1 addition & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -10,79 +10,4 @@ owner: Ross Buggins
1010
author: Ross Buggins
1111
---
1212

13-
```mermaid
14-
C4Context
15-
title System Context diagram for NHS Notify Digital Letters
16-
System_Ext(tie01, "Trust TIE")
17-
System_Ext(print01, "Print Suplier")
18-
System_Ext(sms01, "SMS Supplier")
19-
Person(citizen01, "Citizen")
20-
21-
22-
23-
24-
25-
System_Boundary(nhse03, "Spine Services"){
26-
System_Ext(pds01, "PDS")
27-
System_Ext(mesh01, "Mesh")
28-
}
29-
30-
System_Boundary(notify01, "NHS Notify") {
31-
System(notify02, "NotiFHIR")
32-
System_Ext(notify04, "Event Bus")
33-
System_Boundary(notify01asd, "Event Consumers") {
34-
System_Ext(notify03, "Core")
35-
System_Ext(notify05, "Reporting")
36-
System_Ext(notify06, "Suppliers API")
37-
}
38-
}
39-
40-
41-
System_Boundary(nhse01, "Core Services"){
42-
System_Ext(pdm01, "PDM", "PDM - NHS Health Lake")
43-
SystemDb_Ext(ndr01, "NDR", "NDR - NHS Document Store")
44-
}
45-
46-
System_Boundary(nhse04, "NHS Login"){
47-
System_Ext(login01, "NHS Login")
48-
}
49-
50-
System_Boundary(nhse02, "NHS App"){
51-
System_Ext(nhsapp03, "NHS App", "Full App")
52-
System_Ext(nhsapp01, "NHS App Messaging", "Inbox")
53-
System_Ext(nhsapp02, "Digital Post Viewer", "Digital Viewing PDF")
54-
}
55-
56-
57-
58-
59-
60-
61-
62-
Rel(tie01, mesh01, "Submits File", "MESH")
63-
Rel(mesh01, notify02, "Retrieve File", "MESH")
64-
65-
Rel(print01, citizen01, "Send Letter", "Snail Mail")
66-
Rel(nhsapp01, citizen01, "Send App Message", "NHSApp Message")
67-
Rel(sms01, citizen01, "Send SMS", "SMS")
68-
69-
Rel(nhsapp03, login01, "Login", "auth")
70-
71-
Rel(notify02, pdm01, "Save File", "HTTP POST")
72-
Rel(notify02, pdm01, "Get File", "HTTP GET")
73-
74-
Rel(pdm01, ndr01, "Submits File", "API")
75-
Rel(notify03, pds01, "Submits File", "API")
76-
Rel(notify02, notify04, "Produces Event", "Event")
77-
Rel(notify04, notify03, "Produces Event", "Event")
78-
Rel(notify04, notify05, "Produces Event", "Event")
79-
Rel(notify04, notify06, "Produces Event", "Event")
80-
81-
Rel(notify06, print01, "Sends File", "API")
82-
Rel(notify03, sms01, "Sends Message", "API")
83-
UpdateLayoutConfig($c4ShapeInRow="8", $c4BoundaryInRow="1")
84-
85-
86-
87-
88-
```
13+
{% include diagram.html title="c4context" %}

docs/architecture/c4/notifhir/index.md

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -10,32 +10,4 @@ owner: Ross Buggins
1010
author: Ross Buggins
1111
---
1212

13-
```mermaid
14-
C4Container
15-
title Container NotiFHIR
16-
17-
Container_Boundary(notify01, "NotiFHIR") {
18-
Container(notify02, "MESH", "Python", "All things MESH", $tags="v1.0", $link="https://www.google.com")
19-
Container(notify04, "PDM")
20-
Container(notify03, "Notifier", $link="https://www.google.com")
21-
Container(notify05, "Printer")
22-
Container(notify06, "Tracker")
23-
}
24-
25-
26-
Container_Boundary(core, "Notify") {
27-
Container_Ext(eventbus, "Event Bus")
28-
29-
}
30-
31-
Rel(notify02, eventbus, "Produces")
32-
Rel(notify03, eventbus, "Produces")
33-
Rel(notify04, eventbus, "Produces")
34-
Rel(notify05, eventbus, "Produces")
35-
Rel(notify06, eventbus, "Produces")
36-
37-
38-
%%UpdateElementStyle(core, $fontColor="red", $bgColor="grey", $borderColor="red")
39-
%%UpdateRelStyle(notify02, eventbus, $offsetY="0", $offsetX="10")
40-
UpdateLayoutConfig($c4ShapeInRow="3", $c4BoundaryInRow="1")
41-
```
13+
{% include diagram.html title="c4container" %}

docs/architecture/c4/notifhir/mesh/index.md

Lines changed: 3 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -10,70 +10,9 @@ owner: Tom D'Roza
1010
author: Tom D'Roza
1111
---
1212

13-
## MESH Poller
1413

15-
```mermaid
16-
C4Component
17-
title Mesh Component
18-
Container_Boundary(meshcontainer, "MESH Container") {
14+
{% include diagram.html title="c4Component-notifhir-1" %}
1915

20-
Container_Boundary(inbound, "Inbound"){
21-
Component(timer, "Mesh Timer")
22-
Component(poller, "Mesh Poller")
23-
Component(retriever, "Mesh Retriever")
24-
ComponentDb(db, "FileStore", "S3", "")
25-
}
16+
{% include diagram.html title="c4Component-notifhir-2" %}
2617

27-
28-
29-
30-
Container_Boundary(outbound, "Outbound"){
31-
Component(reporter, "Mesh Status reporter")
32-
}
33-
34-
Rel(timer, poller, "Produced", "TimeExipred")
35-
Rel(poller, retriever, "Sends File", "FileFound")
36-
Rel(retriever, db, "Saves File", "S3")
37-
38-
39-
UpdateLayoutConfig($c4ShapeInRow="3", $c4BoundaryInRow="1")
40-
}
41-
```
42-
43-
Move below both to c4 code pages, nested below
44-
45-
```mermaid
46-
architecture-beta
47-
group meshPoller(cloud)[MeshPoller]
48-
service meshDownloaded(aws:res-amazon-eventbridge-event)[Scheduled Poll Event]
49-
service pdmSaved(aws:res-amazon-eventbridge-event)[MESHFileAvailable Event]
50-
service meshPollQueue(logos:aws-sqs)[MeshPoll Queue] in meshPoller
51-
service meshPollLambda(logos:aws-lambda)[MeshPoll] in meshPoller
52-
service mesh(server)[MESH]
53-
54-
55-
meshDownloaded:R -- L:meshPollQueue
56-
meshPollQueue:R --> L:meshPollLambda
57-
meshPollLambda:T --> B:mesh
58-
meshPollLambda:R --> L:pdmSaved
59-
```
60-
61-
## MESH Retriever
62-
63-
```mermaid
64-
architecture-beta
65-
group meshRetriever(cloud)[MeshRetriever]
66-
service meshDownloaded(aws:res-amazon-eventbridge-event)[MESHFileAvailable Event]
67-
service pdmSaved(aws:res-amazon-eventbridge-event)[MESHFileDownloaded Event]
68-
service meshDownloadQueue(logos:aws-sqs)[MeshDownload Queue] in meshRetriever
69-
service meshDownloadLambda(logos:aws-lambda)[MeshDownload] in meshRetriever
70-
service mesh(server)[MESH]
71-
service s3(logos:aws-s3)[S3 Bucket] in meshRetriever
72-
73-
74-
meshDownloaded:R -- L:meshDownloadQueue
75-
meshDownloadQueue:R --> L:meshDownloadLambda
76-
meshDownloadLambda:T --> B:mesh
77-
meshDownloadLambda:B --> T:s3
78-
meshDownloadLambda:R --> L:pdmSaved
79-
```
18+
{% include diagram.html title="c4Component-notifhir-3" %}

0 commit comments

Comments
 (0)