[readme] some more structure in README file

This commit is contained in:
bronsen 2025-03-18 11:46:58 +01:00
parent c9cc55e439
commit 95905709d9

View file

@ -9,29 +9,35 @@
## Development
This project makes use of [direnv] and [just].
This project makes use of several tools:
[direnv] is used to set up environment variables and activate the virtualenv. I
recommend installing it and integrate it into your favourite shell. It works
well with fish shell.
[just] is used as a task runner.
[woodpecker-cli] is used to lint `.woodpecker/workflow.yaml`. It is available
* [direnv] is used to set up environment variables and activate the virtualenv. I
recommend installing it and integrate it into your favourite shell.
* [just] is used as a task runner.
* [woodpecker-cli] is used to lint `.woodpecker/workflow.yaml`. It is available
from [homebrew].
[pytest] is the test runner. Invoke it using `just test` (any arguments will be
* [pytest] is the test runner. Invoke it using `just test` (any arguments will be
passed through to pytest).
Several pytest-plugins are used:
* [hypothesis]
* [pytest-django]
* [pytest-cov]
### Getting started
#### Python
Have Python >= 3.12 installed. I recommend [pyenv] (which in turn is easily
installed by [homebrew]).
#### PostgreSQL
Set up PostgreSQL, a role and a schema. I have it on localhost, using the
project name for role and schema name, and password. See `.env.test` for
providing connection information.
#### Get the code
Clone the repo. `cd` into the project directory. ([direnv] should activate the
virtualenv.) Run `python -m pip install -U pip` to upgrade pip. Then `python -m
pip install -r requirements/dev.txt`.
@ -82,6 +88,8 @@ testing requirements and development tools.
A useful command is `pip-sync requirements/dev.txt`, it uninstalls packages
from your virtualenv that aren't explicitly specified as dependencies.
----
[pip-compile-multi]: https://pypi.org/project/pip-compile-multi/
[direnv]: https://direnv.net/
[just]: https://just.systems/
@ -89,3 +97,6 @@ from your virtualenv that aren't explicitly specified as dependencies.
[homebrew]: https://brew.sh/
[pytest]: https://pytest.org/
[woodpecker-cli]: https://formulae.brew.sh/formula/woodpecker-cli
[hypothesis]: https://hypothesis.readthedocs.io/en/latest/
[pytest-django]: https://pytest-django.readthedocs.io/en/latest/
[pytest-cov]: https://pytest-cov.readthedocs.io/en/latest/