How To#

This document is meant to help new comers to the project to handle it

I want to suggest a modification#

Please submit a Pull Request on our project on github .

We are using standard github PR process. This link will help you to follow it.

Please READ the CODING file before creating the PR. In particular:

  1. Format Python files using ruff format. ruff is available as a formatter in some IDEs, or can be run manually from the repo root as uvx ruff format

  2. Check Python files for errors using ruff check, uvx ruff check or your IDE. Note that many errors can be fixed automatically using uvx ruff check --fix.

  3. Make sure you are documenting your classes, methods and functions.

I want to install it on my computer to develop it#

Regular method with VS Code#

For Windows, Linux and probably Mac:

  1. Please install git, VS Code and uv.

  2. Create an empty folder somewhere on your computer. The folder will be the workspace.

  3. Open VSCode.

  4. In Extension (Ctrl+Shift+X), install Python module. Other recommended modules are Ruff and SQLite.

  5. Click on Clone git repository. Select Clone from github. Sign into Github.

  6. Clone “Club-Alpin-Annecy/collectives” or your personnal fork.

  7. When asked, open the cloned repository

  8. Open terminal (Ctrl+shift+ù)

  9. Execute uv sync

  10. In VSCode run Select interpreter and choose ./.venv/bin/python (Recommended)

  11. Run uv run flask --app collectives:create_app db upgrade to populate the local database.

  12. Start debugging (F5)

  13. On MacOS, the port 5000 may already be used by Apple Airplay Receiver. Deactivate it in your parameters (Airport & Handoff tab).

  14. Open your browser to http://localhost:5000

I want to generate the documentation#

For windows:

Install pip Sphinx, then

cd doc
./make_html.bat

For Linux and Mac:

cd doc
uv run make html

I want to file a bug#

Bugs can be opened on the github issue system: Club-Alpin-Annecy/collectives#issues

Fixes are very welcomed since we cannot treat bugs very quickly.

I want to talk with the developper team#

The CAF Annecy has a Slack where collectives development is discussed. Please contact digital@cafannecy.fr for access.