Auto-Discovery & Detection

Intelligent project configuration detection

🔮 How Auto-Discovery Works

When you add a project, the system automatically detects important configuration details:

🤖 We Automatically Detect:

  1. Project Type - Drupal, Laravel, WordPress, or generic PHP
  2. Web Root - Where your public files are (web/, public/, docroot/)
  3. Database - Connection info from config files
  4. PHP Version - Which PHP your project needs

Project Type Detection

We identify your project type by looking for:

  • Drupal - core/lib/Drupal.php or includes/bootstrap.inc
  • Laravel - artisan file and Laravel framework
  • WordPress - wp-config.php and wp-includes
  • Generic - Any other PHP project

Web Root Detection

We check for common public directories:

  • web/ - Drupal, Symfony
  • public/ - Laravel
  • docroot/ - Acquia-style Drupal
  • html/ - Legacy setups
  • Project root if none found

Smart Database Detection

For Drupal sites with complex setups (like environment-based configuration), we:

  1. Check your Apache VHost for environment variables (SetEnv)
  2. Read settings.php for conditional includes
  3. Follow the include chain to find the actual config file
  4. Extract database credentials from the right file

Configuration Sources

Database credentials are read from:

  • Drupal: settings.php, settings.local.php, environment includes
  • Laravel: .env file
  • WordPress: wp-config.php
💡 Safe Approach

If we can't figure it out, we'll show "undetermined" rather than guess wrong! You can always manually configure the database in project settings.