🧪 Creador y Probador de Reglas de Detección
Diseña, prueba en vivo y genera firmas JSON con reglas (detectionRules) para detectar cualquier tecnología en la web.
📋 Reglas de Coincidencia (detectionRules)
Define qué patrones Regex buscar en meta tags, scripts, cabeceras o DOM.
🕵️ Probador / Simulador en Vivo
Evalúa las reglas actuales contra una URL real o ingresa código HTML/Headers manualmente.
💾 Firma JSON Resultante
Copia esta firma para agregarla a techs/cms/, techs/apps/, techs/gateways/ o techs/infra/.
{}
🛠️ Arquitectura y Setup
Instrucciones para correr el Chismógrafo en tu máquina.
Requisitos
- Node.js (v18+)
- npm o yarn
Instalación
git clone https://github.com/RifatelaMX/Chismografo.git
cd Scrapper
npm install
npm run dev
💻 CLI Chismógrafo
Cómo usar la consola para sacar chismes.
# Vincular comando localmente
npm link
# Escanear dominio
chismografo test-domain shopify.com
# Escanear con atributo específico
chismografo test-domain shopify.com --attr cms
# Asistente interactivo
chismografo add-cms
chismografo add-app
chismografo add-infra
🌐 API REST del Chismógrafo
Documentación completa de los endpoints de detección en tiempo real, gestión de capturas de pantalla y catálogo CRUD de tecnologías con soporte para planes de precios.
📸 Capturas de Pantalla (Screenshots)
Obtiene las capturas de un sitio web. Parámetro device=desktop o device=mobile opcional; si se omite, devuelve ambas capturas en un objeto.
# Obtener ambas capturas (Desktop y Móvil)
curl "http://localhost:3000/api/screenshots?url=shopify.com"
# Obtener únicamente versión móvil
curl "http://localhost:3000/api/screenshots?url=shopify.com&device=mobile"
Genera y guarda nuevas capturas de pantalla para una URL.
curl -X POST -H "Content-Type: application/json" -d '{"url": "shopify.com", "device": "desktop"}' http://localhost:3000/api/screenshots
Fuerza la regeneración y reemplazo de las capturas existentes de un dominio.
curl -X PUT -H "Content-Type: application/json" -d '{"url": "shopify.com"}' http://localhost:3000/api/screenshots
Elimina del servidor los archivos de captura asociados al dominio.
curl -X DELETE "http://localhost:3000/api/screenshots?url=shopify.com"
📦 Catálogo de Tecnologías (CRUD & Planes de Precios)
Endpoints disponibles para las colecciones: /api/techs/apps, /api/techs/cms, /api/techs/infra, /api/techs/pixels y /api/techs/gateways.
Listar elementos con soporte de filtrado por categoría y paginación (por defecto 5 elementos por página).
# Listar primeras 5 aplicaciones (página 1 por defecto)
curl "http://localhost:3000/api/techs/apps?limit=5&page=1"
# Filtrar por categoría
curl "http://localhost:3000/api/techs/apps?category=Anal%C3%ADtica&limit=10"
Obtiene el expediente completo de una tecnología mediante su ID único en formato slug (kebab-case).
curl "http://localhost:3000/api/techs/apps/microsoft-clarity"
curl "http://localhost:3000/api/techs/cms/shopify"
Crea una nueva tecnología en el catálogo incluyendo identificador único, planes de precios múltiples y reglas de detección.
curl -X POST -H "Content-Type: application/json" -d '{
"name": "Mi App Nueva",
"developer": "Mi Empresa",
"category": "Analítica",
"precios": [
{
"id": 1,
"plan": "Demo",
"precio": 1.00,
"moneda": "USD"
},
{
"id": 2,
"plan": "Pro",
"precio": 29.00,
"moneda": "USD"
}
],
"detectionRules": [
{
"type": "script-src",
"pattern": "mi-app\\.js",
"description": "Script detectado"
}
]
}' http://localhost:3000/api/techs/apps
Actualiza de forma completa (PUT) o parcial (PATCH) la información, precios o reglas de una tecnología.
curl -X PATCH -H "Content-Type: application/json" -d '{
"precios": [
{
"id": 1,
"plan": "Free Tier",
"precio": 0.00,
"moneda": "USD"
}
]
}' http://localhost:3000/api/techs/apps/mi-app-nueva
Elimina la tecnología del catálogo y del sistema de archivos, sincronizando el índice en caliente.
curl -X DELETE "http://localhost:3000/api/techs/apps/mi-app-nueva"
🕵️ Detección en Tiempo Real & Reglas
Escanea un sitio web completo identificando CMS, plugins, pasarelas, píxeles, CDN, geolocalización y velocidad Lighthouse.
curl "http://localhost:3000/api/detect?url=shopify.com"
curl -X POST -H "Content-Type: application/json" -d '{"url": "shopify.com"}' http://localhost:3000/api/detect
Evalúa un lote de reglas de detección (detectionRules) contra una URL o código HTML en vivo.
curl -X POST -H "Content-Type: application/json" -d '{"url": "shopify.com", "detectionRules": [{"type": "meta", "key": "generator", "pattern": "shopify"}]}' http://localhost:3000/api/rules/test
Lanza auditoría móvil de velocidad, accesibilidad y SEO vía Google PageSpeed Insights.
curl -X POST -H "Content-Type: application/json" -d '{"url": "shopify.com"}' http://localhost:3000/api/pagespeed
Respuesta preflight CORS automática con código HTTP 204 y cabeceras permitidas (GET, POST, PUT, DELETE, OPTIONS, PATCH, HEAD).
🔎 Mete el buscador de chismes
Deja que los visitantes de tu web espíen a cualquier tienda con este buscador bien chido 💅
<iframe src="https://chismografo.rifatela.lol/search-widget.html" width="100%" height="480" style="border:1px solid rgba(255,255,255,0.1); border-radius:12px; background:#000;"></iframe>
Un buscador compacto y livianito, ¡perfecto para incrustar! 🪶
<iframe src="https://chismografo.rifatela.lol/?embed=true" width="100%" height="700" style="border:1px solid rgba(255,255,255,0.1); border-radius:12px; background:#000;"></iframe>
El dashboard completo con mapas, gráficas y capturas. Usa ?embed=true pa' que se vea sin header 😎
📚 Directorio de Herramientas
Catálogo de tecnologías y sus reglas de detección ordenadas alfabéticamente por categoría.