jemgdevp / laravel-domo
AI-powered database orchestrator for Laravel. Web Dashboard, TUI, and MCP server for Eloquent architecture and migration management.
Requires
- php: ^8.2
- illuminate/console: ^11.0|^12.0
- illuminate/database: ^11.0|^12.0
- illuminate/support: ^11.0|^12.0
- laravel/prompts: ^0.3
- nunomaduro/termwind: ^2.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- laravel/pint: ^1.13
- orchestra/testbench: ^9.0|^10.0
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.5|^11.0
README
๐ Overview
Laravel Domo is an all-in-one database engineering suite for Laravel (v11+). It bridges the gap between raw SQL, Eloquent models, and AI-driven architecture.
โจ Features
- ๐ Web Dashboard - Rich visual interface for database management (
domo:serve) - ๐ป Terminal UI - Powerful TUI for command-line workflow (
domo:tui) - ๐ค AI Architect - AI-powered Eloquent ORM analysis and suggestions
- ๐ MCP Integration - Model Context Protocol for AI agent connectivity
- ๐ Schema Analyzer - Intelligent database schema inspection
- ๐ Migration Management - Visual migration generation and preview
- ๐ฆ Portability - Import/Export SQL dumps and migrations
๐ฆ Installation
Install the package via Composer:
composer require --dev jemgdevp/laravel-domo
Configuration
Publish the configuration file:
php artisan vendor:publish --tag=domo-config
Environment Setup
Add your API keys to .env:
# AI Driver Configuration DOMO_AI_DRIVER=openai OPENAI_API_KEY=your-api-key # Or use Anthropic # DOMO_AI_DRIVER=anthropic # ANTHROPIC_API_KEY=your-api-key # MCP Server DOMO_MCP_ENABLED=true DOMO_MCP_PORT=3000 # Dashboard DOMO_DASHBOARD_ENABLED=true DOMO_DASHBOARD_PORT=8080
๐ฏ Usage
Web Dashboard
Start the web dashboard server:
php artisan domo:serve
Access the dashboard at http://localhost:8080/domo
Options:
php artisan domo:serve --host=0.0.0.0 --port=3000 --open
Terminal UI
Launch the TUI:
php artisan domo:tui
Options:
php artisan domo:tui --no-colors --simple
MCP Server
Enable MCP server for AI agent integration:
DOMO_MCP_ENABLED=true DOMO_MCP_PORT=3000 DOMO_MCP_HOST=127.0.0.1
AI Configuration
Configure your preferred AI driver:
DOMO_AI_DRIVER=openai OPENAI_API_KEY=your-api-key # Or use Anthropic # DOMO_AI_DRIVER=anthropic # ANTHROPIC_API_KEY=your-api-key
Available Commands
| Command | Description |
|---|---|
php artisan domo:serve |
Start web dashboard |
php artisan domo:tui |
Launch terminal UI |
php artisan vendor:publish --tag=domo-config |
Publish config |
Configuration
Edit config/domo.php:
return [ 'ai_driver' => 'openai', // or 'anthropic' 'mcp' => [ 'enabled' => true, 'port' => 3000, 'host' => '127.0.0.1', ], 'dashboard' => [ 'enabled' => true, 'route' => 'domo', 'host' => '127.0.0.1', 'port' => 8080, 'middleware' => ['web'], ], 'tui' => [ 'enabled' => true, 'theme' => 'default', 'colors' => true, ], 'database' => [ 'connection' => config('database.default'), 'tables' => [ 'exclude' => 'migrations,failed_jobs', ], ], ];
๐ Documentation
Full documentation is available at https://jemgdevp.github.io/laravel-domo
Additional Resources
๐งช Testing
composer test
๐ก๏ธ Security
If you discover any security related issues, please email murksopps@gmail.com instead of using the issue tracker.
๐ Requirements
- PHP 8.2+
- Laravel 11.x or 12.x
- Database: MySQL, PostgreSQL, SQLite, or SQL Server
โ FAQ
Q: Is this package production-ready?
A: Laravel Domo is designed for development environments. Install as dev dependency: composer require --dev jemgdevp/laravel-domo
Q: Which AI providers are supported?
A: Currently supports OpenAI and Anthropic. More providers coming soon.
Q: Can I use this with SQLite?
A: Yes! Laravel Domo supports MySQL, PostgreSQL, SQLite, and SQL Server.
Q: How do I customize the dashboard route?
A: Edit config/domo.php and change the dashboard.route value.
๐ค Contributing
See our Contributing Guide for details.
๐ License
Laravel Domo is open-sourced software licensed under the MIT license.
๐ Acknowledgments
- Laravel - The PHP Framework for Web Artisans
- TestBench - Laravel testing helper
- Anthropic - AI provider
- OpenAI - AI provider
Made with โค๏ธ by jemgdevp