https://github.com/alphagov/notifications-utils
Shared code between GOV.UK Notify applications
https://github.com/alphagov/notifications-utils
government-as-a-platform govuk-notify
Last synced: 8 months ago
JSON representation
Shared code between GOV.UK Notify applications
- Host: GitHub
- URL: https://github.com/alphagov/notifications-utils
- Owner: alphagov
- License: mit
- Created: 2016-01-07T12:17:46.000Z (about 10 years ago)
- Default Branch: main
- Last Pushed: 2025-05-08T15:20:59.000Z (8 months ago)
- Last Synced: 2025-05-08T22:49:41.643Z (8 months ago)
- Topics: government-as-a-platform, govuk-notify
- Language: Python
- Homepage:
- Size: 4.69 MB
- Stars: 13
- Watchers: 16
- Forks: 11
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# notifications-utils
Shared Python code for GOV.UK Notify applications. Standardises how to do logging, rendering message templates, parsing spreadsheets, talking to external services and more.
## Setting up
### Python version
This repo is written in Python 3.
### uv
We use [uv](https://github.com/astral-sh/uv) for Python dependency management. Follow the [install instructions](https://github.com/astral-sh/uv?tab=readme-ov-file#installation) or run:
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```
### Pre-commit
We use [pre-commit](https://pre-commit.com/) to ensure that committed code meets basic standards for formatting, and will make basic fixes for you to save time and aggravation.
Install pre-commit system-wide with, eg `brew install pre-commit`. Then, install the hooks in this repository with `pre-commit install --install-hooks`.
## To test the library
```
# install dependencies, etc.
make bootstrap
# run the tests
make test
```
## Publishing a new version
Versioning should be done by running the `make version-[type of change]` command, following [semantic versioning](https://semver.org/). For example
```
make version-patch
```
Include a short summary (sentence or two) about the changes you've made in `CHANGELOG.md`. Please do this even if you're only making a minor or patch version change.