Skip to content

Commit 04d78a8

Browse files
committed
Add title and color legend to provided mermaid diagrams
1 parent 13c9d5e commit 04d78a8

File tree

2 files changed

+54
-30
lines changed

2 files changed

+54
-30
lines changed

README.md

Lines changed: 36 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
This repository provides items focused on gamifying the coffee machine kata.
99

1010
These items are by design "programming language agnostic",
11-
e.g. they may be used with the coffee machine kata in any language.
11+
e.g. they may be used with the coffee machine kata in any language (assuming the language is supported).
1212

1313
## Available Gamification Tools
1414

@@ -33,10 +33,13 @@ It's not intended to be used directly by kata participants.
3333
## Overall Architecture
3434

3535
Both the Progress Runner and the Command Line Interface utility are built
36-
on top of a common text protocol.
37-
Refer to [Inter-Process Text Protocol](./dev-doc/inter-process-text-protocol.md) for further details.
36+
on top of a common inter-process text protocol.
37+
You can refer to [Inter-Process Text Protocol](./dev-doc/inter-process-text-protocol.md) for further details.
3838

3939
```mermaid
40+
---
41+
title: GameKit for Coffee Machine Kata - Overall Architecture
42+
---
4043
graph LR
4144
subgraph runner [Progress Runner]
4245
PROGRESS_RUNNER(Progress<br>Runner)
@@ -73,52 +76,57 @@ graph LR
7376
PROTOCOL --> JAVA_RUNNER --> JAVA_FACADE --> JAVA_IMPL
7477
PROTOCOL --> CPP_RUNNER --> CPP_FACADE --> CPP_IMPL
7578
PROTOCOL --> PYTHON_RUNNER --> PYTHON_FACADE --> PYTHON_IMPL
76-
classDef testModule fill:#369;
79+
classDef providedModule fill:#369;
7780
classDef implModule fill:#693;
78-
class PROGRESS_RUNNER testModule;
79-
class CLI_DRIVER_1 testModule;
80-
class CLI_RUNNER testModule;
81-
class CLI_DRIVER_2 testModule;
82-
class JAVA_RUNNER testModule;
83-
class JAVA_FACADE testModule;
81+
class PROGRESS_RUNNER providedModule;
82+
class CLI_DRIVER_1 providedModule;
83+
class CLI_RUNNER providedModule;
84+
class CLI_DRIVER_2 providedModule;
85+
class JAVA_RUNNER providedModule;
86+
class JAVA_FACADE providedModule;
8487
class JAVA_IMPL implModule;
85-
class CPP_RUNNER testModule;
86-
class CPP_FACADE testModule;
88+
class CPP_RUNNER providedModule;
89+
class CPP_FACADE providedModule;
8790
class CPP_IMPL implModule;
88-
class PYTHON_RUNNER testModule;
89-
class PYTHON_FACADE testModule;
91+
class PYTHON_RUNNER providedModule;
92+
class PYTHON_FACADE providedModule;
9093
class PYTHON_IMPL implModule;
9194
```
9295

96+
```mermaid
97+
---
98+
title: Color Legend
99+
---
100+
graph
101+
PROVIDED_MODULE(Provided with the kata)
102+
IMPL_MODULE(Implemented by the kata participant)
103+
classDef providedModule fill:#369;
104+
classDef implModule fill:#693;
105+
class PROVIDED_MODULE providedModule;
106+
class IMPL_MODULE implModule;
107+
```
108+
93109
## Repository Breakdown
94110

95-
This repository (`test-coffeemachine`) provides the client tool runners:
111+
This repository (`gamekit-coffeemachine`) provides the client tool runners:
96112

97113
- Progress Runner
98114
- Command Line Interface Runner
99115

100-
The kata repository (`kata-coffeemachine`) contains the implementation of the coffee machine kata in different
101-
languages.
116+
The kata repository (`kata-coffeemachine`) contains the implementation of the coffee machine kata
117+
with support for implementation in different languages.
118+
102119
For each supported language:
103120

104121
- The command line runner is fully implemented.
105122
- The facade skeleton is provided.
106123

107-
The parts remaining to be implemented by kata participants are
124+
The parts remaining to be implemented by kata participants are:
108125

109126
- the actual implementation of kata.
110127
- the facade implementation, wiring the implementation to the command line runner.
111128

112-
## TODO
113-
114-
- [ ] Add a diagram with the 2 repositories
115-
- [x] Add instructions on how to run the tools
116-
- [x] Move protocol details to a separate page
117-
- [ ] Add instructions on how to implement the facade in a new language
118-
- [x] Add development instructions
119-
- [x] Migrate this repository to murex (public)
120-
121-
## Building, testing and releasing coaching helpers for the coffee machine kata
129+
## Building, testing and releasing gamification tools for the coffee machine kata
122130

123131
Refer to [development documentation](./dev-doc/README.md) for details.
124132

dev-doc/inter-process-text-protocol.md

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ Communication between the Progress Runner (or the CLI utility) and the implement
66
done through a simple inter-process text protocol built on top Unix pipes.
77

88
```mermaid
9+
---
10+
title: Inter-Process Text Protocol - Main Modules
11+
---
912
graph LR
1013
subgraph client_process [Client Application Process]
1114
client_app[Client<br>Application]
@@ -22,15 +25,28 @@ graph LR
2225
client_app <--> client_msg_handler
2326
client_msg_handler <== pipe ===> impl_runner
2427
impl_runner <--> impl_facade <--> impl_app
25-
classDef client fill:#369;
26-
classDef impl fill:#693;
28+
classDef client fill:#9e1a2c;
29+
classDef impl fill:#1a5a9e;
2730
class client_app client;
2831
class client_msg_handler client;
2932
class impl_runner impl;
3033
class impl_facade impl;
3134
class impl_app impl;
3235
```
3336

37+
```mermaid
38+
---
39+
title: Color Legend
40+
---
41+
graph
42+
CLIENT_PROCESS(Module in the client application process)
43+
IMPL_PROCESS(Module in the language implementation process)
44+
classDef client fill:#9e1a2c;
45+
classDef impl fill:#1a5a9e;
46+
class CLIENT_PROCESS client;
47+
class IMPL_PROCESS impl;
48+
```
49+
3450
When the `client application process` (the Progress Runner or the CLI utility) is started:
3551

3652
- It spawns a new `language implementation process` for the chosen language implementation of the coffee machine.

0 commit comments

Comments
 (0)