Official software engineering handbook for the Meridex research group.
This handbook defines how research software is developed, reviewed, and maintained in the group. It is the authoritative onboarding document for all students and developers — not a generic Git tutorial.
| Document | Purpose |
|---|---|
| Student Guide | Start here if you are a new student |
| Maintainer Guide | Repository administration and policy |
| Templates | PR template, issue templates, checklists |
| Appendices | Glossary, group policies, research software principles |
CodeHandbook/
├── README.md ← This file
├── mkdocs.yml ← MkDocs site configuration
├── docs/
│ ├── index.md ← Handbook landing page
│ ├── student/ ← Student Guide (18 chapters)
│ ├── maintainer/ ← Maintainer Guide (19 chapters)
│ ├── appendices/ ← Glossary, policies, principles
│ ├── templates/ ← PR, issue, README templates
│ └── assets/ ← Diagrams and images
├── example-repository/ ← Practice repository for exercises
├── .github/
│ ├── ISSUE_TEMPLATE/
│ ├── PULL_REQUEST_TEMPLATE.md
│ └── workflows/
└── LICENSE
All work in this group follows a single protected workflow:
main
│
├── git pull origin main (sync)
├── git checkout -b feature/task (branch)
├── [develop → commit → repeat] (work)
├── git push origin feature/task (push)
├── Pull Request on GitHub (review)
└── Squash Merge → main (merge)
No direct commits to main. All changes go through Pull Requests.
pip install mkdocs-material
mkdocs serveOpen http://127.0.0.1:8000 in your browser.
This handbook is itself maintained using the same workflow it describes. To suggest a correction or addition, open a Pull Request following the standard process.
Meridex Research Group