A-08
Prospea
Generación de leads B2B por geolocalización y categoría de negocio, sobre la API de Google Places.
This sheet is not translated yet. Shown in Spanish.
| Type | freelance |
|---|---|
| Platform | Next.js |
| Year | 2026 |
| Role | Full-stack |
| Stack | Next.js · TypeScript · Prisma · Auth.js · Radix UI · Anthropic SDK · Google Places API · Jest |
| Commits propios | 144 de 274 · git log agrupando 2 identidades de autor |
| Cobertura | umbrales por ruta · jest.config.js, de 3% a 78% según módulo |
Contexto
Prospectar B2B a mano es abrir un mapa, buscar una categoría, anotar los que aparecen y repetir. El dato existe y es público; el trabajo es recolectarlo y ordenarlo.
Opciones
Podía scrapear los resultados del mapa, que es gratis y frágil: cambia el HTML y se cae todo, sin aviso y sin contrato. O pagar la API de Places, que cuesta por consulta y obliga a decidir qué NO consultar.
Elegí la segunda porque el modo de fallar es distinto: una API paga falla con un código de error que puedo manejar, un scraper falla devolviendo datos plausibles y equivocados.
Decisión
Next.js con Prisma y Auth.js, consumiendo Google Places por geolocalización más categoría, y el SDK de Anthropic para clasificar y redactar el primer contacto.
Sobre los tests hay algo que prefiero declarar antes que maquillar: los umbrales de cobertura son desparejos por ruta. El módulo que toca el dato y la facturación está al 78%; hay uno de presentación al 3%. Publicar «60% de cobertura» sería un promedio que esconde exactamente la información útil.
Verificación
144 de los 274 commits del repositorio son míos. Los umbrales están en jest.config.js,
por ruta, y el build los respeta.
Consecuencias
Depender de una API paga por consulta cambia el diseño: hay que cachear y hay que decidir qué no consultar. Eso es más restricción de producto que de código.