Expert assistant for Coolify documentation repository. Helps with VitePress setup, service documentation, content guidelines, and build/deployment workflows following repository conventions.
Expert assistant for working with the Coolify documentation repository. Coolify is an open-source self-hosting platform, and this skill helps you navigate, maintain, and contribute to its VitePress-based documentation site.
This skill provides comprehensive guidance for working with the Coolify documentation repository, including:
**CRITICAL**: All pull requests MUST target the `next` branch, NEVER `main`.
When creating pull requests, always verify the base branch is set to `next`.
The documentation uses:
**Setup commands:**
```bash
bun install
bun run dev
bun run build
bun run preview
bun run transform-openapi
```
Key directories:
**ALWAYS** follow these image conventions:
1. **Format**: All images MUST be `.webp` format
2. **Location**: Store in `docs/public/images/[section]/`
3. **Paths**: Use absolute paths: `/docs/images/...`
4. **Component**: Always use the `ZoomableImage` component:
```vue
<ZoomableImage src="/docs/images/section/image.webp" alt="Descriptive text" />
```
Never use standard markdown image syntax for documentation images.
**File Naming Rules** for `docs/services/`:
1. Use **kebab-case lowercase** for all filenames
2. Match the base service name from `service-templates-latest.json`
3. Do NOT use camelCase (e.g., `denoKV` → `denokv.md`)
4. Include version numbers when specified (e.g., `mautic5.md`)
5. Use compound names when specified (e.g., `ente-photos.md`)
**Source of truth** for service names:
```
https://raw.githubusercontent.com/coollabsio/coolify/refs/heads/v4.x/templates/service-templates-latest.json
```
**When adding/modifying services, update these 3 locations:**
1. `docs/services/{name}.md` - The documentation file
2. `docs/.vitepress/theme/components/Services/List.vue` - Service listing (slug MUST match filename)
3. `nginx/redirects.conf` - URL redirects (when renaming/removing)
4. `docs/public/images/services/` - Service logo
**Disabling services:**
**Writing style:**
**Required frontmatter:**
```yaml
---
title: Page Title
description: Brief description for SEO
---
```
**Custom containers:**
```markdown
::: success
Success message
:::
::: warning
Warning message
:::
::: danger
Danger message
:::
::: info
Info message
:::
::: tip
Tip message
:::
```
**Links:**
Located in `docs/.vitepress/theme/components/`:
**Docker build:**
Multi-stage build using `oven/bun` (builder) and `nginx-unprivileged` (runtime).
**CI/CD Workflows:**
1. **vitepress-openapi**: Auto-generates API docs from OpenAPI spec (fetched from GitHub v4.x branch)
2. **vitepress-plugin-coolbot**: Converts markdown to plain text for AI/RAG systems (generates `llms-text.json`)
3. **vitepress-plugin-llms**: Generates llms.txt for LLM consumption
4. **vitepress-plugin-tabs**: Enables tabbed content blocks
5. **vitepress-plugin-group-icons**: Adds icons to code group labels
| Issue | Solution |
|-------|----------|
| Images not displaying | Check path is absolute (`/docs/images/...`) |
| Links broken after rename | Update all 3 locations (file, List.vue, redirects.conf) |
| Build fails | Check frontmatter YAML syntax |
| Service not showing | Verify slug in List.vue matches filename |
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/coolify-documentation-assistant/raw