Skip to content

Commit 4599bf0

Browse files
committed
docs(readme): add badge links, alter wording, mention hsma_changes.md, add to step 3
1 parent 8e0fbba commit 4599bf0

File tree

1 file changed

+24
-12
lines changed

1 file changed

+24
-12
lines changed

README.md

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
# Simple Reproducible Python<br>Discrete-Event Simulation (DES) Template
44

5-
![python](https://img.shields.io/badge/-Python_3.13-306998?logo=python&logoColor=white)
6-
![licence](https://img.shields.io/badge/Licence-MIT-green.svg?labelColor=gray)
5+
[![python](https://img.shields.io/badge/-Python_3.13-306998?logo=python&logoColor=white)](https://www.python.org/)
6+
[![licence](https://img.shields.io/badge/Licence-MIT-green.svg?labelColor=gray)](https://github.com/pythonhealthdatascience/rap_template_python_des/blob/main/LICENSE)
77
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.14622466.svg)](https://doi.org/10.5281/zenodo.14622466)
8-
![Tests](https://github.com/pythonhealthdatascience/rap_template_python_des/actions/workflows/tests.yaml/badge.svg)
8+
[![Tests](https://github.com/pythonhealthdatascience/rap_template_python_des/actions/workflows/tests.yaml/badge.svg)](https://github.com/pythonhealthdatascience/rap_template_python_des/actions/workflows/tests.yaml)
99

1010
A simple template for creating DES models in Python, within a **reproducible analytical pipeline (RAP)** <br>
1111
Click on <kbd>Use this template</kbd> to initialise new repository.<br>
@@ -38,10 +38,10 @@ This repository provides a template for building discrete-event simulation (DES)
3838

3939
♻️ **Reproducible:** This template is designed to function as a RAP. It adheres to reproducibility recommendations from:
4040

41-
* ["Levels of RAP" framework](https://nhsdigital.github.io/rap-community-of-practice/introduction_to_RAP/levels_of_RAP/) from the NHS RAP Community of Practice (as documented in `docs/nhs_rap.md`).
42-
* Recommendations from [Heather et al. 2025](TODO:ADDLINK) "*On the reproducibility of discrete-event simulation studies in health research: a computational investigation using open models*" (as documented in `docs/heather_2025.md`).
41+
* ["Levels of RAP" framework](https://nhsdigital.github.io/rap-community-of-practice/introduction_to_RAP/levels_of_RAP/) from the NHS RAP Community of Practice (`docs/nhs_rap.md`).
42+
* Recommendations from [Heather et al. 2025](TODO:ADDLINK) "*On the reproducibility of discrete-event simulation studies in health research: a computational investigation using open models*" (`docs/heather_2025.md`).
4343

44-
🚀 **Extendable:** This template adapts from and complements material from Sammi Rosser and Dan Chalk (2024) ["HSMA - the little book of DES"](https://github.com/hsma-programme/hsma6_des_book). For clarity, changes from the DES book in this template are explained in `docs/hsma_changes.md`. The book includes additional advanced features that can be used to extend the model in this template, including:
44+
🚀 **Extendable:** This template adapts from and complements material from Sammi Rosser and Dan Chalk (2024) ["HSMA - the little book of DES"](https://github.com/hsma-programme/hsma6_des_book). The book includes additional advanced features that can be used to extend the model in this template, including:
4545

4646
* Multiple activities
4747
* Branching paths
@@ -50,6 +50,8 @@ This repository provides a template for building discrete-event simulation (DES)
5050
* Variable arrival rates
5151
* Appointment booking
5252

53+
For clarity, changes from the DES book in this template are explained in `docs/hsma_changes.md`.
54+
5355
**Style:** Coding style based on the [Google Python Style Guide](https://google.github.io/styleguide/pyguide.html). Used `flake8` and `pylint` to lint `.py` files, and `pycodestyle` for `.ipynb` files.
5456

5557
<!--TODO: Add links to STARS, relevant publication, and https://github.com/pythonhealthdatascience/rap_des/ -->
@@ -121,23 +123,33 @@ As an alternative, a `requirements.txt` file is provided which can be used to se
121123

122124
### Step 3: Explore and modify
123125

124-
Review the example DES implementation in `scripts`. Modify and extend the code as needed for your specific use case.
126+
🔎 Review the example DES implementation in `scripts`. Modify and extend the code as needed for your specific use case.
127+
128+
🔎 Check you still fulfil the criteria in `docs/nhs_rap.md` and `docs/heather_2025.md`.
129+
130+
🔎 Adapt the template `README` provided at the end of this file.
125131

126-
Check you still fulfil the criteria in `docs/nhs_rap.md` and `docs/heather_2025.md`.
132+
🔎 Create your own `CITATION.cff` file using [cff-init](https://citation-file-format.github.io/cff-initializer-javascript/#/).
127133

128-
A template `README` is provided at the end of this file.
134+
🔎 Replace entries in the current `CHANGELOG` with your own, and create GitHub releases.
129135

130-
Replace entries in the current `CHANGELOG` with your own, alongside creating **GitHub releases**.
136+
🔎 Archive your repository (e.g. [Zenodo](https://zenodo.org/)).
131137

132-
Create your own `CITATION.cff` file using [cff-init](https://citation-file-format.github.io/cff-initializer-javascript/#/).
138+
🔎 Complete the Strengthening The Reporting of Empirical Simulation Studies (STRESS) checklist (`stress_des.md`) and use this to support writing publication/report, and attach as an appendice to report.
139+
140+
🔎 **Tests**
133141

134142
To run tests, ensure environment is active and located in main directory (i.e. parent of `tests/`) and then run the following command. The tests may take around one minute to run. As they run, you will see '.' if the test passes and 'F' if it fails (e.g. `tests/test_model.py ..F..`). When it finishes, you will see the final result (e.g. `==== 1 failed, 4 passed in 51s ====`)
135143

136144
```
137145
pytest
138146
```
139147

140-
The repository contains a GitHub action `tests.yaml` which will automatically run tests with new commits to GitHub. This is continuous integration, helping to catch bugs early and keep the code stable.
148+
The repository contains a GitHub action `tests.yaml` which will automatically run tests with new commits to GitHub. This is continuous integration, helping to catch bugs early and keep the code stable. It will run the tests on three operating systems: Ubuntu, Windows and Mac.
149+
150+
If you have changed the model behaviour, you may wish to amend, remove or write new tests.
151+
152+
🔎 **Linting**
141153

142154
You can lint the `.py` files by running either of this commands from the terminal:
143155

0 commit comments

Comments
 (0)