Getting Started =============== On this page, you will find instructions on how to set up your coding environment to contribute to the project. Prerequisites ------------- In order to contribute to the project, you should have the following prerequisites: #. Install `Git `_. #. Ensure you have Python 3.12 installed or higher. You can check which version you are running by executing the following command in your terminal:: $ python --version #. Install `UV `_ by following the installation instructions `here `_. #. Clone the repository locally by executing the following command:: $ git clone https://github.com/Loefbijter/loefsys.git #. Then, open the directory with the cloned repository and execute:: $ uv install #. Install all pre-commit hooks with the following command:: $ pre-commit install # If pre-commit isn't recognized, use this: $ uv run pre-commit install #. In the root directory, create a ``.env`` file and fill it with the necessary environment variables. In :ref:`recommended-env`, the recommended environment variables for development can be found. #. Install Tailwind CLI and execute the following command:: $ tailwindcss -i loefsys/indexpage/static/input.css -o loefsys/indexpage/static/output.css --watch #. To populate the database, in the root folder, run the following command:: $ uv run manage.py makemigrations #. Then run the following command:: $ uv run manage.py migrate #. Finally, you can start the development server in a new terminal with:: $ uv run manage.py runserver #. Now, head over to `localhost:8000 ` in your browser and you should see the homepage of loefsys, or go to http://localhost:8000/profile/signup/. Creating a Superuser ^^^^^^^^^^^^^^^^^^^^ #. If you want to create an admin user for yourself in your local database, you can run the following command:: $ uv run manage.py createsuperuser # You will be asked to enter a username, email address, and password. Choose these as you like. You can keep the email address field empty. # If you get a prompt that your password is too weak, you can ignore this (only in development of course, we don't do weak passwords in production ;). #. You just created your first superuser! Head over to http://localhost:8000/profile/login/ and log in with the credentials which you have entered in the previous step. Available Commands ------------------ * :func:`uv run manage.py runserver ` * :func:`uv run manage.py makemigrations ` * :func:`uv run manage.py migrate ` * :func:`uv run manage.py createsuperuser `