docs: comprehensive documentation overhaul

Add complete documentation structure:
- Frontend architecture documentation
- Database schema documentation
- Deployment guides (Docker, Traefik, Authentik, Environment)
- Development guides (Setup, Testing, Contributing, Quality Gates)
- Deployment architecture documentation
- Updated docs README with complete navigation

All new features and APIs are now documented.
Quality gates: docs only, no code changes
This commit is contained in:
Fusion
2026-05-19 14:18:20 +02:00
parent 6807f449b7
commit 83f94b1f09
31 changed files with 5498 additions and 0 deletions
+154
View File
@@ -0,0 +1,154 @@
# Tool Types API
Tool type management endpoints.
## Authentication
All endpoints require authentication (session cookie).
---
## GET /tool-types
**Description:** List all tool types.
### Response
#### Success (200 OK)
```json
[
{
"id": "uuid",
"name": "code-server",
"display_name": "VS Code Server",
"description": "VS Code in the browser",
"is_builtin": true,
"created_at": "2024-01-01T00:00:00Z"
}
]
```
---
## POST /tool-types
**Description:** Create a new tool type.
### Request
#### Request Body
```json
{
"name": "my-tool",
"display_name": "My Custom Tool",
"description": "A custom development tool",
"compose_template": "version: \"3.8\"\nservices:\n tool:\n image: my-image:latest\n container_name: {{TOOL_NAME}}\n volumes:\n - {{REPO_PATH}}:/workspace",
"required_variables": ["TOOL_NAME", "REPO_PATH"]
}
```
| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `name` | `string` | Yes | Unique identifier |
| `display_name` | `string` | Yes | Human-readable name |
| `description` | `string` | No | Description |
| `compose_template` | `string` | Yes | Docker Compose YAML |
| `required_variables` | `array` | Yes | Required template variables |
### Response
#### Success (201 Created)
```json
{
"id": "uuid",
"name": "my-tool",
"display_name": "My Custom Tool",
"description": "A custom development tool",
"compose_template": "...",
"required_variables": ["TOOL_NAME", "REPO_PATH"],
"is_builtin": false,
"created_at": "2024-01-01T00:00:00Z"
}
```
#### Error (400 Bad Request)
```json
{
"detail": "Invalid YAML in compose template"
}
```
---
## GET /tool-types/{id}
**Description:** Get tool type details.
### Response
#### Success (200 OK)
```json
{
"id": "uuid",
"name": "code-server",
"display_name": "VS Code Server",
"description": "VS Code in the browser",
"compose_template": "...",
"required_variables": ["TOOL_NAME", "REPO_PATH"],
"is_builtin": true,
"created_at": "2024-01-01T00:00:00Z"
}
```
---
## PUT /tool-types/{id}
**Description:** Update a tool type.
**Note:** Built-in tool types cannot be modified.
### Request
#### Request Body
Same as POST /tool-types.
### Response
#### Success (200 OK)
Returns updated tool type.
#### Error (403 Forbidden)
```json
{
"detail": "Cannot modify built-in tool types"
}
```
---
## DELETE /tool-types/{id}
**Description:** Delete a tool type.
**Note:** Built-in tool types cannot be deleted.
### Response
#### Success (204 No Content)
#### Error (403 Forbidden)
```json
{
"detail": "Cannot delete built-in tool types"
}
```