Add documentation on the data model behind the tech radar
Signed-off-by: Joost Hofman <joost.hofman@ah.nl>
This commit is contained in:
@@ -67,6 +67,127 @@ export interface TechRadarPageProps {
|
||||
|
||||
When defining the radar entries you can see the available properties on the file [api](./src/api.ts)
|
||||
|
||||
## Tech radar data model
|
||||
|
||||
| Name | Type | Description | Required? |
|
||||
| --------- | ----------------------- | -------------------------------------------------------------------- | --------- |
|
||||
| title | string | The title of the radar | Yes |
|
||||
| quadrants | [quadrant[]](#quadrant) | The 4 quadrants of the radar, clockwise starting at the bottom right | Yes |
|
||||
| rings | [ring[]](#ring) | The radar rings, starting from the inside | Yes |
|
||||
| entries | [entry[]](#entry) | The radar entries | Yes |
|
||||
|
||||
### quadrant
|
||||
|
||||
| Name | Type | Description | Required? |
|
||||
| ---- | ------ | ------------------------ | --------- |
|
||||
| id | string | The id of the quadrant | Yes |
|
||||
| name | string | The name of the quadrant | Yes |
|
||||
|
||||
### ring
|
||||
|
||||
| Name | Type | Description | Required? |
|
||||
| ----- | ------ | ------------------------------------------------- | --------- |
|
||||
| id | string | The id of the ring | Yes |
|
||||
| name | string | The name of the ring | Yes |
|
||||
| color | string | The color of the ring and entries inside the ring | Yes |
|
||||
|
||||
### entry
|
||||
|
||||
| Name | Type | Description | Required? |
|
||||
| ----------- | ----------------------- | ----------------------------------------------- | --------- |
|
||||
| id | string | The unique id from the entry | Yes |
|
||||
| title | string | The title that is shown in the radar | Yes |
|
||||
| description | string | The full description of the entry | No |
|
||||
| key | string | The entry key | Yes |
|
||||
| url | string | The url to the entry internal or external page | No |
|
||||
| quadrant | string | The name of the quadrant connected to the entry | Yes |
|
||||
| timeline | [timeline[]](#timeline) | Requires minimal one timeline entry | Yes |
|
||||
|
||||
### timeline
|
||||
|
||||
| Name | Type | Description | Required? |
|
||||
| ----------- | ------ | ------------------------------------------------------------- | --------- |
|
||||
| moved | number | Possible values are: -1 (moved out), 0 (stayed), 1 (moved in) | Yes |
|
||||
| ringId | string | The ring id | Yes |
|
||||
| date | string | Date in format (YYYY-MM-dd) | Yes |
|
||||
| description | string | A long description | Yes |
|
||||
|
||||
### Sample
|
||||
|
||||
This is a sample on how the JSON file could look like.
|
||||
The TS example can be found [here](src/sample.ts).
|
||||
|
||||
```JSON
|
||||
{
|
||||
"title": "Title of your Tech radar",
|
||||
"quadrants": [
|
||||
{
|
||||
"id": "1",
|
||||
"name": "Bottom right"
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
"name": "Bottom left"
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
"name": "Top left"
|
||||
},
|
||||
{
|
||||
"id": "4",
|
||||
"name": "Top right"
|
||||
}
|
||||
],
|
||||
"rings": [
|
||||
{
|
||||
"id": "adopt",
|
||||
"name": "ADOPT",
|
||||
"color": "#93c47d"
|
||||
},
|
||||
{
|
||||
"id": "trial",
|
||||
"name": "TRIAL",
|
||||
"color": "#93d2c2"
|
||||
},
|
||||
{
|
||||
"id": "assess",
|
||||
"name": "ASSESS",
|
||||
"color": "#fbdb84"
|
||||
},
|
||||
{
|
||||
"id": "hold",
|
||||
"name": "HOLD",
|
||||
"color": "#efafa9"
|
||||
}
|
||||
],
|
||||
"entries": [
|
||||
{
|
||||
"id": "typescript",
|
||||
"title": "Typescript",
|
||||
"description": "Long description for Typescript",
|
||||
"key": "typescript",
|
||||
"url": "#",
|
||||
"quadrant": "1",
|
||||
"timeline": [
|
||||
{
|
||||
"moved": 0,
|
||||
"ringId": "trial",
|
||||
"date": "2022-02-06",
|
||||
"description": "Long description for trial"
|
||||
},
|
||||
{
|
||||
"moved": 1,
|
||||
"ringId": "adopt",
|
||||
"date": "2022-02-08",
|
||||
"description": "Long description for adopt"
|
||||
}
|
||||
]
|
||||
},
|
||||
...
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## Frequently Asked Questions
|
||||
|
||||
### Who created the Tech Radar?
|
||||
|
||||
Reference in New Issue
Block a user