Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

ZeroLoop Job Hunter — Fase 1 (MVP)

Extensión de Chrome (Manifest V3) que analiza ofertas de LinkedIn Jobs directamente desde la página, sin copiar/pegar URLs.

✅ Qué hace esta versión (Fase 1)

  • Detecta automáticamente cuando estás en linkedin.com/jobs/*
  • Inyecta un botón flotante "Analyze"
  • Al hacer click, abre un panel lateral que extrae:
    • Título del puesto
    • Empresa
    • Ubicación
    • Descripción completa
  • Botón "Analyze with AI":
    • Si no configuraste un backend, muestra un análisis demo basado en coincidencia simple de palabras clave (para probar la UI)
    • Si configurás BACKEND_URL en content.js, llama a tu backend en POST /analyze con { job, profile } y muestra el resultado real
  • Popup de configuración: definí tu perfil (nombre, años de experiencia, skills) — se usa para calcular el match

🚀 Instalación (modo desarrollador)

  1. Abrí Chrome y vas a chrome://extensions
  2. Activá "Modo de desarrollador" (arriba a la derecha)
  3. Click en "Cargar descomprimida"
  4. Seleccioná esta carpeta (zeroloop-extension)
  5. Entrá a cualquier oferta de LinkedIn, ej: https://www.linkedin.com/jobs/view/123456789
  6. Click en el botón morado "Analyze" que aparece a la derecha

⚙️ Configurar tu perfil

  1. Click en el ícono de la extensión (arriba a la derecha del navegador)
  2. Completá nombre, años de experiencia y skills (separadas por coma)
  3. "Guardar perfil"

Estos datos se guardan localmente con chrome.storage.local y se envían al backend (Fase 2) junto con cada oferta para calcular el match.

🔌 Conectar el backend (Fase 2)

Editá content.js:

const BACKEND_URL = "http://localhost:3000";

Tu backend debe expoder un endpoint:

POST /analyze
Body: { "job": {...}, "profile": {...} }

Respuesta esperada:
{
  "match": 87,
  "summary": "texto breve sobre el fit",
  "salaryMin": 3000,
  "salaryMax": 4500,
  "strengths": ["Vue", "React", "Node"],
  "missingSkills": ["AWS"]
}

🗺️ Roadmap (próximas fases)

  • Fase 2: backend Node.js + Express + OpenAI para análisis real
  • Fase 3: perfil enriquecido (CV completo, experiencias) para mejor matching
  • Fase 4: botón "Generate tailored CV" → genera PDF personalizado
  • Fase 5: botón "Generate reply" → mensaje listo para el recruiter
  • Fase 6: PostgreSQL para guardar histórico de ofertas analizadas
  • Fase 7: dashboard con métricas (ofertas analizadas, match promedio, etc.)

🛠️ Notas técnicas

  • Los selectores del DOM de LinkedIn (content.js → SELECTORS) tienen fallbacks porque LinkedIn cambia sus clases generadas frecuentemente. Si algo deja de extraerse bien, revisar/actualizar esos selectores inspeccionando el HTML actual de la página.
  • LinkedIn es una SPA: el script detecta cambios de URL para re-extraer datos al navegar entre ofertas sin recargar la página.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages