# Prueba: Cambiar DB para Nuevo Proyecto

## 🎯 Objetivo

Verificar que al cambiar `DB_DATABASE` en `.env` y ejecutar los seeders, **todo el proyecto se adapta automáticamente** desde los JSONs.

## ✅ Proceso Completo

### Paso 1: Cambiar Base de Datos

```bash
# Editar .env
DB_DATABASE=nuevo_proyecto_db
```

### Paso 2: Ejecutar Migraciones y Seeders

```bash
php artisan migrate:fresh --seed
```

**Esto ejecuta automáticamente:**

1. **CdSystemSeeder** → Lee `cd-system.json` → Actualiza `config/cd-system.php`
   - Demo activo
   - Módulos activos

2. **SiteDataSeeder** → Lee `site-data.json` → Guarda en DB (tabla `settings`)
   - name, tagline, url, author
   - contact, social_media, footer
   - seo, og, twitter
   - development, assets

3. **AssetsSeeder** → Lee `assets.json` → Guarda en DB (tabla `assets`)
   - Logos, favicons, imágenes OG/Twitter

4. **AnalyticsSeeder** → Lee `analytics.json` → Guarda en DB (tabla `settings`)
   - Google Analytics tracking ID

5. **Otros seeders** → Contenido
   - Blog, Services, Projects, etc.

### Paso 3: Verificar

```bash
php artisan config:clear
php artisan tinker --execute="echo 'Name: ' . config('site.name') . PHP_EOL; echo 'URL: ' . config('site.url') . PHP_EOL; echo 'GA: ' . config('site.google_analytics.tracking_id') . PHP_EOL;"
```

## 🔍 Verificación en DB

```sql
-- Ver todos los datos del proyecto en settings
SELECT key, value FROM settings WHERE key LIKE 'site.%' ORDER BY key;

-- Ver assets
SELECT name, path, type FROM assets;
```

## ✅ Resultado Esperado

Después de cambiar DB y ejecutar seeders:

✅ **Todo se adapta automáticamente:**
- Nombre, tagline, URL del nuevo proyecto (desde `site-data.json`)
- SEO, OG, Twitter del nuevo proyecto (desde `site-data.json`)
- Contact, social media del nuevo proyecto (desde `site-data.json`)
- Assets del nuevo proyecto (desde `assets.json`)
- Google Analytics del nuevo proyecto (desde `analytics.json`)
- Demo y módulos activos (desde `cd-system.json`)

✅ **Sin tocar código:**
- `config/site.php` solo tiene estructura (no se modifica)
- Código PHP no se toca
- Solo cambia DB y se ejecutan seeders

## ⚠️ Importante

**Para que funcione correctamente:**

1. ✅ Los JSONs deben tener los datos del nuevo proyecto
2. ✅ Los assets físicos deben estar en `public/cd-project/assets/`
3. ✅ Ejecutar `migrate:fresh --seed` (no solo `seed`)
4. ✅ Limpiar cache después: `php artisan config:clear`

## 🚀 Comando Completo

```bash
# 1. Cambiar DB en .env
# DB_DATABASE=nuevo_proyecto_db

# 2. Ejecutar todo
php artisan migrate:fresh --seed

# 3. Limpiar cache
php artisan config:clear

# 4. Verificar
php artisan tinker --execute="echo 'Name: ' . config('site.name') . PHP_EOL;"
```

## 📝 Notas

- **`migrate:fresh`** limpia la DB y la recrea (importante para nuevo proyecto)
- **Los JSONs** son la fuente de verdad para cada proyecto
- **La DB** almacena los datos del proyecto actual
- **`config/site.php`** solo tiene estructura (no datos del proyecto)
