From 95905709d9d55bf45f0163756228ac0790a4194e Mon Sep 17 00:00:00 2001 From: bronsen <kontakt+gitcommit@nrrd.de> Date: Tue, 18 Mar 2025 11:46:58 +0100 Subject: [PATCH] [readme] some more structure in README file --- README.md | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 30c13ab..ff8c6d3 100644 --- a/README.md +++ b/README.md @@ -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/