# Installation ## Requirements - Python 3.11+ - [uv](https://docs.astral.sh/uv/) - nginx - systemd ## Clone ```bash git clone https://gitaec.org/rvba/ifc-commit cd ifc-commit ``` ## Install dependencies ```bash uv sync ``` ## Development server ```bash make web-dev ``` Starts uvicorn on `http://127.0.0.1:8095` with auto-reload. ## Production deployment ### 1. Install the systemd service and nginx config ```bash make install-service ``` This will: - Write `/etc/systemd/system/ifc-commit.service` (filled with the current working directory and user) - Symlink `files/ifc-commit.conf` into `/etc/nginx/sites-enabled/` - Enable and start the `ifc-commit` systemd service - Reload nginx ### 2. Configure your domain Edit `files/ifc-commit.conf` and set `server_name` to your domain before running `make install-service`. ### 3. Manage the service ```bash make start # sudo systemctl start ifc-commit make stop # sudo systemctl stop ifc-commit ``` Check logs: ```bash journalctl -u ifc-commit -f ``` ## Personal access token The web UI has a **Personal access token** field. The token is saved in the browser's `localStorage` and never stored server-side. Generate one from your Forgejo account settings.