### Install dependencies Source: https://fuzzygrim.github.io/Yamtrack/release/development Uses uv to sync the environment and install pre-commit hooks. ```bash uv sync uv run pre-commit install ``` -------------------------------- ### Start PostgreSQL containers Source: https://fuzzygrim.github.io/Yamtrack/release/setup Starts the Yamtrack containers using the PostgreSQL configuration file. ```bash docker compose -f docker-compose.postgres.yml up -d ``` -------------------------------- ### Serve documentation Source: https://fuzzygrim.github.io/Yamtrack/release/development Installs documentation dependencies and serves the docs. ```bash uv sync --group docs uv run zensical serve ``` -------------------------------- ### Start Yamtrack with Docker Compose Source: https://fuzzygrim.github.io/Yamtrack/release Use this command to start the Yamtrack service after configuring the docker-compose.yml file. ```bash docker compose up -d ``` -------------------------------- ### Start Redis with Docker Source: https://fuzzygrim.github.io/Yamtrack/release/development Starts a Redis container using Docker if not already running locally. ```bash docker run -d --name redis -p 6379:6379 --restart unless-stopped redis:8-alpine ``` -------------------------------- ### Configure environment variables Source: https://fuzzygrim.github.io/Yamtrack/release/development Example content for the .env file required in the repository root. ```text TMDB_API=API_KEY MAL_API=API_KEY IGDB_ID=IGDB_ID IGDB_SECRET=IGDB_SECRET STEAM_API_KEY=STEAM_API_SECRET BGG_API_TOKEN=BGG_API_TOKEN SECRET=SECRET DEBUG=True ``` -------------------------------- ### Run Django development server Source: https://fuzzygrim.github.io/Yamtrack/release/development Starts the Django development server manually. ```bash cd src uv run manage.py runserver ``` -------------------------------- ### Configure GitHub Authentication Source: https://fuzzygrim.github.io/Yamtrack/release/social-auth Example configuration for GitHub authentication, specifying the required scopes. ```bash SOCIAL_PROVIDERS=allauth.socialaccount.providers.github SOCIALACCOUNT_PROVIDERS={"github":{"SCOPE":["user","repo","read:org"]}} ``` -------------------------------- ### Install Playwright browsers Source: https://fuzzygrim.github.io/Yamtrack/release/development Required before running integration tests. ```bash uv run playwright install ``` -------------------------------- ### Run Tailwind watcher Source: https://fuzzygrim.github.io/Yamtrack/release/development Starts the Tailwind CSS watcher to compile styles. ```bash cd src tailwindcss -i ./static/css/input.css -o ./static/css/tailwind.css --watch ``` -------------------------------- ### Download PostgreSQL Compose file Source: https://fuzzygrim.github.io/Yamtrack/release/setup Downloads the docker-compose.postgres.yml file for PostgreSQL setups. ```bash curl -LO https://raw.githubusercontent.com/FuzzyGrim/Yamtrack/release/docker-compose.postgres.yml ``` -------------------------------- ### Download SQLite Compose file Source: https://fuzzygrim.github.io/Yamtrack/release/setup Downloads the default docker-compose.yml file for SQLite setups. ```bash curl -LO https://raw.githubusercontent.com/FuzzyGrim/Yamtrack/release/docker-compose.yml ``` -------------------------------- ### Run the application with honcho Source: https://fuzzygrim.github.io/Yamtrack/release/development Starts the web server, Celery worker, and Tailwind watcher using honcho. ```bash uvx honcho -e /dev/null start ``` -------------------------------- ### Configure OpenID Connect with Authelia Source: https://fuzzygrim.github.io/Yamtrack/release/social-auth Example configuration for OpenID Connect using Authelia, requiring both SOCIAL_PROVIDERS and a JSON-formatted SOCIALACCOUNT_PROVIDERS string. ```bash SOCIAL_PROVIDERS=allauth.socialaccount.providers.openid_connect SOCIALACCOUNT_PROVIDERS={"openid_connect":{"OAUTH_PKCE_ENABLED":true,"APPS":[{"provider_id":"authelia","name":"Authelia","client_id":"your-client-id","secret":"your-client-secret","settings":{"server_url":"https://authelia.yourdomain.com/.well-known/openid-configuration"}}]}} ``` -------------------------------- ### Run Celery worker Source: https://fuzzygrim.github.io/Yamtrack/release/development Starts the Celery worker with the scheduler. ```bash cd src uv run celery -A config worker --beat --scheduler django --loglevel DEBUG ``` -------------------------------- ### Configure Reverse Proxy environment Source: https://fuzzygrim.github.io/Yamtrack/release/setup Example snippet for setting the URLS environment variable within a docker-compose service definition. ```yaml services: yamtrack: environment: - URLS=https://yamtrack.mydomain.com ``` -------------------------------- ### Prepare the database Source: https://fuzzygrim.github.io/Yamtrack/release/development Runs Django migrations to set up the database schema. ```bash cd src uv run manage.py migrate ``` -------------------------------- ### Enable Social Providers via SOCIAL_PROVIDERS Source: https://fuzzygrim.github.io/Yamtrack/release/social-auth Use the SOCIAL_PROVIDERS environment variable to specify which authentication providers to enable. ```bash SOCIAL_PROVIDERS=allauth.socialaccount.providers.openid_connect,allauth.socialaccount.providers.github ``` -------------------------------- ### Configure URLS environment variable Source: https://fuzzygrim.github.io/Yamtrack/release/setup Sets the public origin URL for reverse proxy configurations. ```text URLS=https://yamtrack.mydomain.com ``` -------------------------------- ### Access development server Source: https://fuzzygrim.github.io/Yamtrack/release/development The URL to access the running development server. ```text http://localhost:8000 ``` -------------------------------- ### Clone the repository Source: https://fuzzygrim.github.io/Yamtrack/release/development Commands to clone the Yamtrack repository and enter the directory. ```bash git clone https://github.com/FuzzyGrim/Yamtrack.git cd Yamtrack ``` -------------------------------- ### Run pre-commit hooks manually Source: https://fuzzygrim.github.io/Yamtrack/release/development Executes the full set of pre-commit hooks on all files. ```bash uv run pre-commit run --all-files ``` -------------------------------- ### Run specific tests Source: https://fuzzygrim.github.io/Yamtrack/release/development Executes tests for a specific app or module. ```bash cd src uv run manage.py test app.tests --parallel ``` -------------------------------- ### Configure Authentik OIDC Provider Source: https://fuzzygrim.github.io/Yamtrack/release/social-auth Configuration settings for integrating Authentik as an OIDC provider in YamTrack. ```bash SOCIAL_PROVIDERS=allauth.socialaccount.providers.openid_connect SOCIALACCOUNT_PROVIDERS={"openid_connect":{"OAUTH_PKCE_ENABLED":true,"APPS":[{"provider_id":"authentik","name":"Authentik","client_id":"","secret":"","settings":{"server_url":"https://authentik.yourdomain.com/application/o/yamtrack/.well-known/openid-configuration"}}]}} ``` -------------------------------- ### Run Django test suite Source: https://fuzzygrim.github.io/Yamtrack/release/development Executes the full Django test suite in parallel. ```bash cd src uv run manage.py test --parallel ``` -------------------------------- ### Create New Admin User Source: https://fuzzygrim.github.io/Yamtrack/release/administration Use this command in the Django shell to create a new user with admin privileges. Replace the placeholders with your desired credentials. ```python User.objects.create_user(username='new_username', password='new_password', is_staff=True, is_superuser=True) ``` -------------------------------- ### Promote Existing User to Admin Source: https://fuzzygrim.github.io/Yamtrack/release/administration Run this command in the Django shell to update an existing user's privileges. Replace 'username' with the target user's username. ```python User.objects.filter(username='username').update(is_staff=True, is_superuser=True) ``` -------------------------------- ### Check Yamtrack container logs Source: https://fuzzygrim.github.io/Yamtrack/release/setup Command to view logs for the main Yamtrack container. ```bash docker logs -f yamtrack ``` -------------------------------- ### Enable Admin Interface via Environment Variable Source: https://fuzzygrim.github.io/Yamtrack/release/administration Set the ADMIN_ENABLED environment variable to True in your configuration file or docker-compose.yml to enable the admin interface. ```text ADMIN_ENABLED=True ``` -------------------------------- ### Check Redis container logs Source: https://fuzzygrim.github.io/Yamtrack/release/setup Command to view logs for the Redis container. ```bash docker logs -f yamtrack-redis ``` -------------------------------- ### Redirect Login to SSO Source: https://fuzzygrim.github.io/Yamtrack/release/social-auth Set REDIRECT_LOGIN_TO_SSO to True to automatically send users to the SSO provider from the login page. ```bash REDIRECT_LOGIN_TO_SSO=True ``` -------------------------------- ### Access Admin Interface URL Source: https://fuzzygrim.github.io/Yamtrack/release/administration The admin interface is accessible at the specified URL once enabled. ```text https://domain.com/admin/ ``` -------------------------------- ### Disable User Registration Source: https://fuzzygrim.github.io/Yamtrack/release/social-auth Set REGISTRATION to False to prevent new users from registering, which is useful for private instances. ```bash REGISTRATION=False ``` -------------------------------- ### Configure SECRET environment variable Source: https://fuzzygrim.github.io/Yamtrack/release/setup Sets the required SECRET environment variable in the Compose file. ```text SECRET=longstring ``` -------------------------------- ### Disable Local Authentication Source: https://fuzzygrim.github.io/Yamtrack/release/social-auth Set SOCIALACCOUNT_ONLY to True to restrict login to social authentication methods only. ```bash SOCIALACCOUNT_ONLY=True ``` -------------------------------- ### Access Django Shell via Docker Source: https://fuzzygrim.github.io/Yamtrack/release/administration Use this command to open the Django shell within the running Docker container. ```bash docker exec -it yamtrack python manage.py shell ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.