# Navegator - Índice de Documentación Guía completa de toda la documentación disponible. --- ## 📚 Documentación Principal ### [README.md](../README.md) Introducción al proyecto, instalación rápida y uso básico. **Cuándo leer:** Siempre al iniciar con el proyecto. --- ## 🎯 Guías de Uso ### [BINARIOS.md](BINARIOS.md) Guía completa de los binarios CLI (screenshot, buscar, navegar). **Temas:** - Compilar binarios - Parámetros de cada binario - Ejemplos de uso - Integración con Python - Casos de uso reales **Cuándo leer:** Para usar los binarios standalone. ### [PERFILES_AVANZADO.md](PERFILES_AVANZADO.md) Gestión avanzada de perfiles de navegador. **Temas:** - Compartir perfiles entre proyectos - Usar mismo perfil en paralelo (clonación) - Perfiles persistentes vs temporales - Sincronización entre máquinas - Casos de uso: scraping multi-cuenta, A/B testing **Cuándo leer:** Cuando necesites: - Mover binarios a otro repo - Ejecutar múltiples instancias simultáneas - Simular usuarios diferentes --- ## 🔧 Guías Técnicas ### [STEALTH_FLAGS.md](STEALTH_FLAGS.md) Documentación completa de flags de Chrome para anti-detección. **Temas:** - Flags críticas (SIEMPRE activadas) - Flags opcionales por contexto - JavaScript anti-detección - Configuración recomendada - Referencias y recursos **Cuándo leer:** Para entender o personalizar las flags stealth. ### [TESTING.md](TESTING.md) Sistema completo de testing E2E y unitario. **Temas:** - Tests unitarios (Go) - Tests E2E (binarios) - Tests de integración - CI/CD automático - Debugging tests fallidos - Escribir nuevos tests **Cuándo leer:** Para verificar que los binarios funcionan correctamente. --- ## 🚀 Quick Start por Caso de Uso ### Quiero automatizar capturas de pantalla 1. Leer: [BINARIOS.md](BINARIOS.md) → Sección "screenshot" 2. Compilar: `make build` 3. Usar: `./bin/screenshot -url https://example.com -o captura.png` ### Quiero hacer web scraping con múltiples cuentas 1. Leer: [PERFILES_AVANZADO.md](PERFILES_AVANZADO.md) → "Scraping Multi-Cuenta" 2. Usar: `scripts/clonar_perfil.sh` para duplicar perfiles 3. Ejecutar en paralelo con perfiles diferentes ### Quiero integrar con Python/otros lenguajes 1. Leer: [BINARIOS.md](BINARIOS.md) → "Integración con Python" 2. Compilar binarios: `make build` 3. Llamar desde subprocess ### Quiero evitar detección de bots 1. Leer: [STEALTH_FLAGS.md](STEALTH_FLAGS.md) 2. Revisar flags activas por defecto 3. Personalizar según necesidad en `pkg/stealth/flags.go` ### Quiero testear cambios antes de deploy 1. Leer: [TESTING.md](TESTING.md) 2. Ejecutar: `make test` 3. Verificar que pasa antes de commit --- ## 📖 Orden de Lectura Recomendado ### Principiante 1. README.md (introducción) 2. BINARIOS.md (usar binarios) 3. PERFILES_AVANZADO.md (entender perfiles) ### Intermedio 4. STEALTH_FLAGS.md (personalizar detección) 5. TESTING.md (verificar funcionamiento) ### Avanzado 6. Código fuente en `pkg/` (extender funcionalidad) 7. Scripts en `scripts/` (automatizar tareas) --- ## 🔍 Buscar por Tema ### Perfiles - Crear perfil: [BINARIOS.md](BINARIOS.md#perfiles-personalizados) - Compartir entre proyectos: [PERFILES_AVANZADO.md](PERFILES_AVANZADO.md#problema-1-mover-binarios) - Usar en paralelo: [PERFILES_AVANZADO.md](PERFILES_AVANZADO.md#problema-2-mismo-perfil-en-paralelo) ### Testing - Ejecutar tests: [TESTING.md](TESTING.md#quick-start) - Tests unitarios: [TESTING.md](TESTING.md#tests-unitarios-detallados) - Tests E2E: [TESTING.md](TESTING.md#tests-e2e-detallados) - CI/CD: [TESTING.md](TESTING.md#cicd-automático) ### Stealth - Flags básicas: [STEALTH_FLAGS.md](STEALTH_FLAGS.md#flags-críticas) - JavaScript anti-detección: [STEALTH_FLAGS.md](STEALTH_FLAGS.md#javascript-injection-anti-detección) - Configuración por contexto: [STEALTH_FLAGS.md](STEALTH_FLAGS.md#flags-para-contextos-específicos) ### Binarios - Compilar: [BINARIOS.md](BINARIOS.md#compilar-todos) - screenshot: [BINARIOS.md](BINARIOS.md#1-screenshot) - buscar: [BINARIOS.md](BINARIOS.md#2-buscar) - navegar: [BINARIOS.md](BINARIOS.md#3-navegar) --- ## 🆘 Troubleshooting ### Chrome no se inicia Ver: [TESTING.md](TESTING.md#chrome-crashed-o-cant-find-chrome) ### Tests fallan Ver: [TESTING.md](TESTING.md#debugging-tests-fallidos) ### Perfil bloqueado Ver: [PERFILES_AVANZADO.md](PERFILES_AVANZADO.md#-no-funciona-directamente) ### Binario no encuentra perfiles Ver: [PERFILES_AVANZADO.md](PERFILES_AVANZADO.md#-problema) --- ## 📝 Contribuir Si encuentras errores o quieres mejorar la documentación: 1. Documentación está en `docs/` 2. Ejemplos están en `examples/` 3. Tests están en `e2e/` --- ## 🔗 Enlaces Útiles - **Chrome DevTools Protocol**: https://chromedevtools.github.io/devtools-protocol/ - **Chrome Flags**: https://peter.sh/experiments/chromium-command-line-switches/ - **Go Testing**: https://go.dev/doc/tutorial/add-a-test --- ## ✅ Checklist Rápido Antes de usar Navegator: - [ ] Leer README.md - [ ] Instalar Chrome/Chromium - [ ] Compilar binarios: `make build` - [ ] Ejecutar tests: `make test-quick` Antes de usar en producción: - [ ] Leer STEALTH_FLAGS.md - [ ] Configurar perfiles persistentes - [ ] Ejecutar `make test` - [ ] Verificar en bot detection sites Antes de hacer commit: - [ ] `make fmt` - [ ] `make lint` - [ ] `make test`