# Componentes de un Producto Market-Ready

> Un producto = core preset + marketplace + infraestructura

---

## Los 4 bloques

```
BLOQUE 1: TEMPLATE (visual)
    Puedo verlo y se ve profesional?

BLOQUE 2: PROVISION (tecnico)
    Puedo crear un sitio funcional con un comando?

BLOQUE 3: MARKETPLACE (comercial)
    El cliente puede encontrarlo, entenderlo y comprarlo?

BLOQUE 4: INFRAESTRUCTURA (operacional)
    Puedo entregarlo automaticamente despues del pago?
```

---

## BLOQUE 1: TEMPLATE

> **Expertise:** Diseno / Frontend (Porto + Blade + CSS)
> **Impacto:** Sin template no hay producto visible.

| # | Componente | Archivos | Descripcion |
|---|-----------|----------|-------------|
| 1.1 | Header | `resources/views/layout/front/headers/demo-{name}.blade.php` | Navegacion principal del sitio |
| 1.2 | Footer | `resources/views/layout/front/footers/demo-{name}.blade.php` | Pie de pagina con links y contacto |
| 1.3 | Page Header | `resources/views/layout/front/partials/page-header-{name}.blade.php` | Banner superior de paginas internas |
| 1.4 | CSS | `public/template/css/demos/demo-{name}.css` | Estilos visuales del template |
| 1.5 | Welcome | `resources/views/modules/cd-base/frontend/demos/demo-{name}/welcome.blade.php` | Homepage |
| 1.6 | About | `resources/views/modules/cd-base/frontend/demos/demo-{name}/about.blade.php` | Pagina Nosotros |
| 1.7 | Contact | `resources/views/modules/cd-base/frontend/demos/demo-{name}/contact.blade.php` | Pagina Contacto |
| 1.8 | Dynamic Headers | `resources/views/modules/{mod}/frontend/partials/dynamic-header.blade.php` | Cada modulo integrado al demo |

**Criterio:** Los 8 componentes completos = template listo.

### Templates disponibles (17 completos en codebase)

| Demo | Usado por cores | Industria natural |
|------|----------------|-------------------|
| demo-accounting-1 | agency, foundations-ong | Institucional, Corporate |
| demo-accounting-2 | personal-brand | Tech, Professional |
| demo-architecture-2 | art-design | Art, Design, Minimal |
| demo-business-consulting | bp-dinamic, petite-website | Corporate, Consulting |
| demo-construction | construction | Construccion, Industrial |
| demo-construction-2 | *(sin asignar)* | Construccion Modern |
| demo-creative-agency-2 | website-reseller | Creative, Bold |
| demo-digital-agency-2 | business-catalogue, catalogue-ai, standard-website, sitio-web-profesional | Tech, Agency, Multi-uso |
| demo-insurance | insurance-advisor, nutritionist, financial-wealth, concierge | Salud, Finanzas, Trust |
| demo-law-firm-2 | law-firm-digital | Legal, Corporate |
| demo-marketing-1 | corporative | Marketing, Dynamic |
| demo-photography-3 | photography | Art, Dark |
| demo-product-landing | *(sin asignar)* | Landing, Conversion |
| demo-real-estate | real-estate | Real Estate, Premium |
| demo-restaurant | restaurant-bar | Gastronomia, Warm |
| demo-sass | *(sin asignar — no en Airtable)* | Tech, SaaS |
| demo-transportation-logistic | *(sin asignar)* | Institucional, Industrial |

### Templates CSS-only (upgrade posible)

Existen 42 CSS adicionales sin header/footer Blade. Los mas relevantes para productos futuros:

| CSS Demo | Candidato para | Esfuerzo |
|----------|---------------|----------|
| demo-hotel | tourism-rentals | Medio (crear header+footer+vistas) |
| demo-medical / demo-medical-2 | medical-suite | Medio |
| demo-education | *(futuro)* | Medio |
| demo-gym | *(futuro)* | Medio |
| demo-dentist | *(futuro health)* | Medio |

---

## BLOQUE 2: PROVISION (tecnico)

> **Expertise:** Backend / Laravel / Artisan
> **Impacto:** Sin provision no hay automatizacion.

| # | Componente | Ubicacion | Descripcion |
|---|-----------|-----------|-------------|
| 2.1 | Core JSON | `database/seeders/products/core/{slug}.json` | Config: demo + modulos + nav + fonts + schema |
| 2.2 | Catalog Mapping | `database/seeders/products/catalog.json` | Shop slug → core slug (N:1) |
| 2.3 | Seeds FAQs | `database/seeders/products/core/seeds/faqs-{core}.json` | Preguntas frecuentes por industria |
| 2.4 | Seeds Services | `database/seeders/products/core/seeds/services-{core}.json` | Servicios iniciales |
| 2.5 | Seeds Blog | `database/seeders/products/core/seeds/blog-{core}.json` | Articulos iniciales |
| 2.6 | Seeds Otros | `database/seeders/products/core/seeds/{mod}-{core}.json` | menu, team, references, products |
| 2.7 | Dry-run OK | `bewpro:new ... --dry-run` | Plan sin ejecutar |
| 2.8 | Provision real | `bewpro:new ... --db=bp-test-{slug}` | Test en DB temporal |

**Criterio:** Core JSON + seeds aplicables + provision test OK = provision listo.

**Detalle completo:** ver `../provision/` (dashboard-cores.md, checklist, plan-de-accion).

---

## BLOQUE 3: MARKETPLACE (comercial)

> **Expertise:** Marketing / Copy / IA
> **Impacto:** Sin marketplace el producto existe pero nadie lo encuentra.

| # | Componente | Ubicacion | Descripcion |
|---|-----------|-----------|-------------|
| 3.1 | Shop Product | Airtable: Shop Products | Registro con Name, Slug, Category, Price |
| 3.2 | Shop Product Copy | Airtable: Shop Products Copy | Headline, Subheadline, Keywords, Features |
| 3.3 | Alias Matrix | `database/seeders/products/alias-matrix.json` | Nombre comercial de cada modulo por industria |
| 3.4 | Product Images | `/admin/products` (por proyecto bewpro) | Screenshots y thumbnails |
| 3.5 | Pricing Stripe | Airtable + Stripe Dashboard | stripe_price_id por producto |
| 3.6 | Landing/Show | bewpro.com `/products-catalogue/{slug}` | Pagina de producto en el sitio BewPro |

**Criterio:** Shop Product + Copy + Price + imagen visible en landing = marketplace listo.

---

## BLOQUE 4: INFRAESTRUCTURA (operacional)

> **Expertise:** DevOps / Server / cPanel
> **Impacto:** Sin infra el cliente paga pero no recibe el sitio.

| # | Componente | Ubicacion | Descripcion |
|---|-----------|-----------|-------------|
| 4.1 | Demo URL | `{slug}.bewpro.com` | Entorno de demo para preview |
| 4.2 | Server Script | `scripts/bewpro/setup_cd_project2.sh` | Provisioning en servidor (cPanel + git + artisan) |
| 4.3 | Cron Pipeline | `scripts/bewpro/process-airtable.sh` | Polling de Airtable → provisioning automatico |
| 4.4 | Stripe Webhook | `/stripe/webhook` | checkout.session.completed → Airtable |
| 4.5 | Welcome Email | `send-welcome-email.php` | Credenciales al cliente post-provision |

**Criterio:** Pipeline automatico probado end-to-end = infra lista.

**Nota:** Los items 4.2-4.5 son **compartidos** — no son por producto sino globales. Solo 4.1 (Demo URL) es por producto.

---

## Resumen: que hace falta para que un producto salga al mercado

```
                        TEMPLATE    PROVISION   MARKETPLACE   INFRA
                        ────────    ─────────   ───────────   ─────
Trabajo por producto:   SI          SI          SI            Solo demo URL
Trabajo global:         -           -           -             Pipeline (ya existe)
Bloqueante:             SI          SI          PARCIAL       NO (funciona)
Quien:                  Frontend    Backend+IA  IA+Manual     DevOps
```

### Orden de ejecucion recomendado

```
1. TEMPLATES    ← Sin esto no hay nada que mostrar
2. PROVISION    ← Sin esto no se puede crear el sitio
3. MARKETPLACE  ← Sin esto nadie lo compra
4. INFRA        ← Ya funciona para los que estan listos
```
