{"id":50509691,"url":"https://github.com/davidcortesa/lupalocal","last_synced_at":"2026-06-02T19:01:06.579Z","repository":{"id":353642899,"uuid":"1220297872","full_name":"DavidCortesA/LupaLocal","owner":"DavidCortesA","description":"🔍 Auditoría web gratuita para negocios locales — Score de rendimiento, Core Web Vitals, SEO y semáforo de tareas en segundos. Construido con Next.js 16, Tailwind v4 y la API de Google PageSpeed.","archived":false,"fork":false,"pushed_at":"2026-04-24T19:04:21.000Z","size":1046,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-24T21:13:33.366Z","etag":null,"topics":["nextjs","pagespeed","saas","seo","tailwindcss","typescript","vercel"],"latest_commit_sha":null,"homepage":"https://lupa-local.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DavidCortesA.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-24T18:51:19.000Z","updated_at":"2026-04-24T19:04:25.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/DavidCortesA/LupaLocal","commit_stats":null,"previous_names":["davidcortesa/lupalocal"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/DavidCortesA/LupaLocal","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidCortesA%2FLupaLocal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidCortesA%2FLupaLocal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidCortesA%2FLupaLocal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidCortesA%2FLupaLocal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DavidCortesA","download_url":"https://codeload.github.com/DavidCortesA/LupaLocal/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DavidCortesA%2FLupaLocal/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33833277,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-02T02:00:07.132Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nextjs","pagespeed","saas","seo","tailwindcss","typescript","vercel"],"created_at":"2026-06-02T19:01:05.439Z","updated_at":"2026-06-02T19:01:06.570Z","avatar_url":"https://github.com/DavidCortesA.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 🔍 LupaLocal\n\n### Auditoría Web Inteligente para Negocios Locales\n\n**¿Tu web atrae clientes o los espanta?**  \nAnaliza gratis la velocidad, el SEO y la seguridad de tu sitio en segundos.  \nSin tecnicismos. Resultados claros.\n\n[![Next.js](https://img.shields.io/badge/Next.js_16-black?style=flat-square\u0026logo=next.js)](https://nextjs.org)\n[![React](https://img.shields.io/badge/React_19-61DAFB?style=flat-square\u0026logo=react\u0026logoColor=black)](https://react.dev)\n[![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?style=flat-square\u0026logo=typescript\u0026logoColor=white)](https://www.typescriptlang.org)\n[![Tailwind CSS](https://img.shields.io/badge/Tailwind_v4-06B6D4?style=flat-square\u0026logo=tailwindcss\u0026logoColor=white)](https://tailwindcss.com)\n[![Vercel](https://img.shields.io/badge/Deploy-Vercel-black?style=flat-square\u0026logo=vercel)](https://vercel.com)\n\n\u003c/div\u003e\n\n---\n\n## ✨ ¿Qué es LupaLocal?\n\nLupaLocal es una herramienta **SaaS** que convierte las métricas técnicas de tu web en un lenguaje claro y accionable, pensado para dueños de negocios locales que quieren **vender más** a través de su presencia digital.\n\n---\n\n## 🚀 Características\n\n| | Funcionalidad |\n|---|---|\n| ⚡ | **Score Global** de rendimiento con gauge visual circular |\n| 📊 | **Core Web Vitals** completos: FCP, LCP, CLS, TBT, TTI, Speed Index |\n| 🔍 | **Scores individuales** de SEO, Accesibilidad y Buenas Prácticas |\n| 🚦 | **Semáforo de Tareas** con 8 puntos de auditoría y descripciones en español |\n| 🔒 | **Vista PRO** desbloqueada con Plan de Acción + Análisis de Competencia |\n| 📄 | **Descarga PDF** del reporte generado en el cliente con `jsPDF` |\n| 🌙 | **Dark / Light mode** con toggle y soporte a preferencia del sistema |\n| 🗺️ | **SEO completo**: Open Graph, Twitter Card, JSON-LD, sitemap, robots.txt |\n\n---\n\n## 🖼️ Pantallas\n\n| 🏠 Landing | 📊 Dashboard | 💼 Servicios |\n|:-----------:|:------------:|:------------:|\n| Hero con análisis gratuito | Score + Semáforo + Core Web Vitals | 3 planes de mejora con CTA |\n\n---\n\n## ⚙️ Cómo funciona\n\n```\nUsuario ingresa URL\n      ↓\nGoogle PageSpeed Insights API (mobile)\n      ↓\nServer Component procesa la respuesta\n      ↓\nDashboard con Score · Vitals · Semáforo\n      ↓\nVista PRO  →  Plan de Acción personalizado\n      ↓\nExportar reporte en PDF\n```\n\n---\n\n## 🛠️ Stack Tecnológico\n\n- **Framework** — Next.js 16 (App Router, Server Components)\n- **UI** — shadcn/ui · Radix UI · Tailwind CSS v4\n- **Iconos** — Lucide React\n- **Temas** — next-themes (dark / light / system)\n- **PDF** — jsPDF (generación client-side)\n- **API** — Google PageSpeed Insights v5\n- **Deploy** — Vercel\n\n---\n\n## 🏃 Correr en local\n\n```bash\n# 1. Clonar el repositorio\ngit clone https://github.com/tu-usuario/lupalocal.git\ncd lupalocal\n\n# 2. Instalar dependencias\nnpm install\n\n# 3. Configurar variables de entorno\ncp .env.example .env\n# Edita .env con tu API key de Google PageSpeed\n\n# 4. Iniciar el servidor de desarrollo\nnpm run dev\n```\n\nAbre [http://localhost:3000](http://localhost:3000) en tu navegador.\n\n---\n\n## 🔑 Variables de Entorno\n\n```env\n# API key de Google PageSpeed Insights\nNEXT_PUBLIC_API_TOKEN=tu_api_key_aqui\n\n# URL de tu sitio desplegado (para SEO y sitemap)\nNEXT_PUBLIC_SITE_URL=https://lupa-local.vercel.app/\n```\n\n\u003e **Obtén tu API key gratis** en [Google Cloud Console](https://console.cloud.google.com/) habilitando la API de *PageSpeed Insights*.\n\n---\n\n## 🔍 Vista PRO (demo)\n\nPara ver la experiencia completa desbloqueada, agrega `\u0026version=PRO` a cualquier resultado:\n\n```\n/resultados?url=https://tupyme.com\u0026version=PRO\n```\n\nDesbloquea el **Plan de Acción Personalizado** y el **Análisis de Competencia Local** 🏆\n\n---\n\n## 📁 Estructura del Proyecto\n\n```\napp/\n├── page.tsx              # 🏠 Landing page\n├── resultados/page.tsx   # 📊 Dashboard de auditoría\n├── servicios/page.tsx    # 💼 Página de planes\n├── api/audit/route.ts    # 🔌 Proxy a PageSpeed API\n├── sitemap.ts            # 🗺️ Sitemap automático\n└── robots.ts             # 🤖 robots.txt\n\ncomponents/\n├── search-input.tsx      # 🔍 Formulario de búsqueda\n├── score-gauge.tsx       # ⭕ Gauge SVG circular\n├── download-pdf-button.tsx # 📄 Generador de PDF\n└── mode-toggle.tsx       # 🌙 Toggle dark/light\n\nlib/\n└── audit.ts              # 🧠 Lógica de auditoría PageSpeed\n```\n\n---\n\n## 🚢 Deploy en Vercel\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new)\n\n1. Importa el repositorio en Vercel\n2. Agrega las variables de entorno en **Settings → Environment Variables**\n3. Deploy 🎉\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\nHecho con ❤️ para impulsar los negocios locales\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidcortesa%2Flupalocal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavidcortesa%2Flupalocal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidcortesa%2Flupalocal/lists"}