# Cómo construí una herramienta de auditoría de marca personal con Firecrawl, Gemini y Lovable

Javier Rodeiro · 2026-01-23

Construí [Personal Brand Audit (BrandAudit)](https://personal-brand-audit.lovable.app/), una herramienta que te dice qué cuenta internet sobre ti. Introduces tu nombre y tu puesto, y busca en la web, rastrea los resultados y te da una puntuación.

La idea salió de una pregunta sencilla: ¿qué ven realmente los reclutadores, los inversores y los clientes cuando buscan tu nombre en Google?

![Tarjeta de resultado de la auditoría de marca de Javier Rodeiro: puntuación 100, nota S, 5 de 5 categorías superadas. Resultados del análisis profundo: unicidad de marca 50 de 100, preparación para IA 50 de 100, 1 colisión de nombre encontrada.](../../../assets/articles/brand-audit.png)

## El stack

La aplicación funciona con tres servicios:

**Lovable** se encarga del frontend y del backend. Construí la app en React y las Supabase Edge Functions enteramente con prompts. Lovable también ofrece un AI Gateway para acceder a modelos como Gemini.

**Firecrawl** se encarga de la inteligencia web. Uso tres endpoints: `/search` para encontrar menciones de tu nombre, `/scrape` para sondear dominios personales (comprueba automáticamente nombreapellido.com/.es/.io) y `/agent` para ejecutar un análisis más profundo.

**Gemini** se encarga del análisis: puntuación, nota y evaluación por categorías. Usa `gemini-2.0-flash` con claves del usuario, con respaldo automático a `gemini-3-flash-preview` a través del AI Gateway de Lovable cuando se alcanzan los límites de cuota. Tu presencia digital se evalúa en cinco categorías: visibilidad, autoridad, coherencia, actualidad y propiedad de un dominio personal.

## La auditoría básica

Cuando envías tu nombre, la edge function llama al endpoint `/search` de Firecrawl:

```ts
const response = await fetch('https://api.firecrawl.dev/v1/search', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${FIRECRAWL_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    query: `"${name}" ${context}`,
    limit: 10,
    scrapeOptions: { formats: ['markdown'] },
  }),
});
```

Una sola llamada devuelve resultados de búsqueda con el contenido completo de cada página en markdown. Para los dominios personales, la app sondea posibles URL (nombreapellido.com, .es, .io) con `/scrape`. Si existe un sitio válido, sube la puntuación.

El contenido en markdown pasa a Gemini para su análisis. Empiezas con 100 puntos y pierdes puntos por cada categoría en la que se detectan problemas (las penalizaciones van de -10 a -20 por categoría). Los usuarios con una presencia digital mínima ven un estado especial de "fantasma" que les anima a construir su huella en internet.

## El análisis profundo

La auditoría básica te dice qué existe. El análisis profundo te dice cómo de defendible es tu nombre.

Esta función usa el endpoint `/agent` de Firecrawl:

```ts
const response = await fetch('https://api.firecrawl.dev/v2/agent', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${FIRECRAWL_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    prompt: agentPrompt,
    schema: {
      type: 'object',
      properties: {
        interference_score: { type: 'number' },
        collision_count: { type: 'number' },
        personal_website: { type: 'string' },
        has_schema: { type: 'boolean' },
      },
    },
    model: 'spark-1-mini',
  }),
});
```

El agente usa internamente el modelo `spark-1-mini` de Firecrawl (no Gemini) y funciona de forma autónoma: busca, navega y extrae datos estructurados. Analiza colisiones de nombre, detecta webs personales, comprueba el marcado Schema.org y devuelve recomendaciones accionables.

Cada análisis profundo consume aproximadamente entre 10 y 15 créditos de Firecrawl (los trabajos del agente son más caros que las búsquedas simples). Hay un periodo de espera de 24 horas entre análisis, que se salta si aportas tu propia clave de Firecrawl.

## La capa de IA

La app usa primero tu clave de Gemini (`gemini-2.0-flash`) para mantener los costes dentro de tu nivel gratuito. Si se supera tu cuota (errores 429/403), recurre al AI Gateway de Lovable, que casualmente ejecuta un modelo más reciente (`gemini-3-flash-preview`), pero existe sobre todo como red de seguridad de fiabilidad:

```ts
const response = await fetch('https://ai.gateway.lovable.dev/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${LOVABLE_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'google/gemini-3-flash-preview',
    messages: [
      { role: 'system', content: systemPrompt },
      { role: 'user', content: userPrompt },
    ],
  }),
});
```

## Primeros pasos con el stack

Si quieres construir algo parecido, así se prepara todo.

## Lovable

Lovable es un constructor de apps con IA. Describes lo que quieres y genera una aplicación full-stack con frontend en React y backend en Supabase.

1. Entra en [lovable.dev](https://lovable.dev/invite/QG4YN1U) y regístrate
2. Crea un proyecto nuevo y describe tu app
3. Lovable genera el código y lo despliega automáticamente
4. Usa el editor integrado para refinarlo mediante prompts

Para las funciones de backend, Lovable crea Supabase Edge Functions. El AI Gateway está disponible en `ai.gateway.lovable.dev`.

## Google AI Studio (Gemini)

Google AI Studio da acceso gratuito a los modelos Gemini.

1. Entra en [aistudio.google.com/apikey](https://aistudio.google.com/apikey)
2. Inicia sesión con tu cuenta de Google
3. Haz clic en "Create API Key"
4. Copia la clave (empieza por `AIza`)

El nivel gratuito incluye 1.500 solicitudes al día.

## Firecrawl

Firecrawl convierte sitios web en datos estructurados para IA.

1. Entra en [firecrawl.dev](https://firecrawl.link/javier) y regístrate
2. Ve a la sección de API Keys de tu panel
3. Crea una clave nueva (empieza por `fc-`)
4. Copia la clave

El nivel gratuito incluye 500 créditos al mes. Una llamada a `/search` usa unos 10 créditos. Los trabajos del agente en el análisis profundo usan entre 10 y 15 créditos por ejecución.

## Funciones de fiabilidad

El backend incluye lógica de reintentos con espera exponencial para errores de red transitorios, respaldo automático al AI Gateway de Lovable cuando las claves de Gemini de los usuarios alcanzan su límite de cuota, y un estado "fantasma" para usuarios con una presencia digital mínima.

## Por qué este stack

Lovable elimina el código repetitivo. Te centras en el producto, no en la infraestructura.

Firecrawl elimina el parseo. Obtienes markdown limpio de `/search` y JSON estructurado de `/agent`. Sin limpiar HTML. Sin selectores frágiles.

## Pruébalo

La herramienta es gratuita. Solo necesitas tus propias claves de API de:

- [Firecrawl](https://firecrawl.link/javier) (500 créditos al mes gratis)
- [Google AI Studio](https://aistudio.google.com/apikey) (1.500 solicitudes al día gratis)

_Aviso de afiliación: el enlace de Firecrawl es un enlace de afiliado._

Source: https://javierrodeiro.com/es/blog/auditoria-de-marca-personal-con-firecrawl-gemini-y-lovable/
