diff --git a/.codex/config.toml b/.codex/config.toml index 300ea316fd..864e1fbd98 100644 --- a/.codex/config.toml +++ b/.codex/config.toml @@ -1,4 +1,3 @@ [mcp_servers.laravel-boost] command = "php" args = ["artisan", "boost:mcp"] -cwd = "/Users/heyandras/devel/coolify" diff --git a/.cursor/rules/coolify-ai-docs.mdc b/.cursor/rules/coolify-ai-docs.mdc deleted file mode 100644 index f3080de0e3..0000000000 --- a/.cursor/rules/coolify-ai-docs.mdc +++ /dev/null @@ -1,156 +0,0 @@ ---- -title: Coolify AI Documentation -description: Master reference to all Coolify AI documentation in .ai/ directory -globs: **/* -alwaysApply: true ---- - -# Coolify AI Documentation - -All Coolify AI documentation has been consolidated in the **`.ai/`** directory for better organization and single source of truth. - -## Quick Start - -- **For Claude Code**: Start with `AGENTS.md` in the root directory -- **For Cursor IDE**: Start with `.ai/README.md` for navigation -- **For All AI Tools**: Browse `.ai/` directory by topic - -## Documentation Structure - -All detailed documentation lives in `.ai/` with the following organization: - -### 📚 Core Documentation -- **[Technology Stack](.ai/core/technology-stack.md)** - All versions, packages, dependencies (SINGLE SOURCE OF TRUTH for versions) -- **[Project Overview](.ai/core/project-overview.md)** - What Coolify is, high-level architecture -- **[Application Architecture](.ai/core/application-architecture.md)** - System design, components, relationships -- **[Deployment Architecture](.ai/core/deployment-architecture.md)** - Deployment flows, Docker, proxies - -### 💻 Development -- **[Development Workflow](.ai/development/development-workflow.md)** - Dev setup, commands, daily workflows -- **[Testing Patterns](.ai/development/testing-patterns.md)** - How to write/run tests, Docker requirements -- **[Laravel Boost](.ai/development/laravel-boost.md)** - Laravel-specific guidelines (SINGLE SOURCE for Laravel Boost) - -### 🎨 Code Patterns -- **[Database Patterns](.ai/patterns/database-patterns.md)** - Eloquent, migrations, relationships -- **[Frontend Patterns](.ai/patterns/frontend-patterns.md)** - Livewire, Alpine.js, Tailwind CSS -- **[Security Patterns](.ai/patterns/security-patterns.md)** - Auth, authorization, security -- **[Form Components](.ai/patterns/form-components.md)** - Enhanced forms with authorization -- **[API & Routing](.ai/patterns/api-and-routing.md)** - API design, routing conventions - -### 📖 Meta -- **[Maintaining Docs](.ai/meta/maintaining-docs.md)** - How to update/improve documentation -- **[Sync Guide](.ai/meta/sync-guide.md)** - Keeping docs synchronized - -## Quick Decision Tree - -**What are you working on?** - -### Running Commands -→ `.ai/development/development-workflow.md` -- `npm run dev` / `npm run build` - Frontend -- `php artisan serve` / `php artisan migrate` - Backend -- `docker exec coolify php artisan test` - Feature tests (requires Docker) -- `./vendor/bin/pest tests/Unit` - Unit tests (no Docker needed) -- `./vendor/bin/pint` - Code formatting - -### Writing Tests -→ `.ai/development/testing-patterns.md` -- **Unit tests**: No database, use mocking, run outside Docker -- **Feature tests**: Can use database, MUST run inside Docker -- Critical: Docker execution requirements prevent database connection errors - -### Building UI -→ `.ai/patterns/frontend-patterns.md` + `.ai/patterns/form-components.md` -- Livewire 3.5.20 with server-side state -- Alpine.js for client interactions -- Tailwind CSS 4.1.4 styling -- Form components with `canGate` authorization - -### Database Work -→ `.ai/patterns/database-patterns.md` -- Eloquent ORM patterns -- Migration best practices -- Relationship definitions -- Query optimization - -### Security & Authorization -→ `.ai/patterns/security-patterns.md` + `.ai/patterns/form-components.md` -- Team-based access control -- Policy and gate patterns -- Form authorization (`canGate`, `canResource`) -- API security with Sanctum - -### Laravel-Specific -→ `.ai/development/laravel-boost.md` -- Laravel 12.4.1 patterns -- Livewire 3 best practices -- Pest testing patterns -- Laravel conventions - -### Version Numbers -→ `.ai/core/technology-stack.md` -- **SINGLE SOURCE OF TRUTH** for all version numbers -- Laravel 12.4.1, PHP 8.4.7, Tailwind 4.1.4, etc. -- Never duplicate versions - always reference this file - -## Critical Patterns (Always Follow) - -### Testing Commands -```bash -# Unit tests (no database, outside Docker) -./vendor/bin/pest tests/Unit - -# Feature tests (requires database, inside Docker) -docker exec coolify php artisan test -``` - -**NEVER** run Feature tests outside Docker - they will fail with database connection errors. - -### Form Authorization -ALWAYS include authorization on form components: -```blade - -``` - -### Livewire Components -MUST have exactly ONE root element. No exceptions. - -### Version Numbers -Use exact versions from `technology-stack.md`: -- ✅ Laravel 12.4.1 -- ❌ Laravel 12 or "v12" - -### Code Style -```bash -# Always run before committing -./vendor/bin/pint -``` - -## For AI Assistants - -### Important Notes -1. **Single Source of Truth**: Each piece of information exists in ONE location only -2. **Cross-Reference, Don't Duplicate**: Link to other files instead of copying content -3. **Version Precision**: Always use exact versions from `technology-stack.md` -4. **Docker for Feature Tests**: This is non-negotiable for database-dependent tests -5. **Form Authorization**: Security requirement, not optional - -### When to Use Which File -- **Quick commands**: `AGENTS.md` or `development-workflow.md` -- **Detailed patterns**: Topic-specific files in `.ai/patterns/` -- **Testing**: `.ai/development/testing-patterns.md` -- **Laravel specifics**: `.ai/development/laravel-boost.md` -- **Versions**: `.ai/core/technology-stack.md` - -## Maintaining Documentation - -When updating documentation: -1. Read `.ai/meta/maintaining-docs.md` first -2. Follow single source of truth principle -3. Update cross-references when moving content -4. Test all links work -5. See `.ai/meta/sync-guide.md` for sync guidelines - -## Migration Note - -This file replaces all previous `.cursor/rules/*.mdc` files. All content has been migrated to `.ai/` directory for better organization and to serve as single source of truth for all AI tools (Claude Code, Cursor IDE, etc.).