# Project Guidelines

- do not create new markdwon files into the project, if documentation update required, use the already exists files
- use available mcp tools for speeding up tasks

## Building the Project

- To build the project (and the web UI too):
  ```bash
  cd build
  cmake --build . -j4
  ```

This deploys the web UI to the correct location: build/webui/
- When starting the server, specify the UI directory:
  `--ui-dir ./build/webui`
- The Stable Diffusion models are located in /data/SD_MODELS/
Always use this folder when starting the server.
- If possible, keep the build/_deps folder.
Rebuilding dependencies takes a very long time.
- Keep the project directory clean.
For example, output and queue directories should not be in the project root.

## Testing the Project

- When testing the server, start it in the background
- When printing directory or file names to the console (e.g., via std::cout), always use absolute paths
- For testing the webui use browser mcp tools

## Coding Guidelines

- Never use using aliases in C++.
Example to avoid: `using json = nlohmann::json;`
Refactor such usages if found.

- In C++, always follow the Rule of 5.
- If any changes are made, check whether the built-in UI also requires updates.
- Always use available MCP tools when working on the project.

## Repository and Issue Management

- Always commit and push your changes.
- Reference the related issue in the commit message (if one exists).
- If no issue exists, create a new one (unless a similar one already exists).
- When users refer to "issues", they are referring to Gogs issues in the Gogs repository (fszontagh/stable-diffusion.cpp-rest). You can access to it using gogs mcp tools