Diario de bares con comunidad: geolocaliza locales, puntúa tus visitas y descubre los mejor valorados
Todo el mundo tiene una lista mental de bares recomendados que nunca recuerda cuando hace falta. BirraFinder convierte esa lista en un diario de bares: guardas los sitios que te han recomendado como pendientes, y registras los que ya has visitado con su puntuación.
La exploración se apoya en Google Maps y Places: geolocalización para ver qué hay alrededor ahora mismo, y búsqueda por ciudad o zona para planificar una salida en otro sitio.
La capa que lo diferencia de una nota del móvil es la comunidad: un top 10 de los más visitados por todos los usuarios, otro top 10 por calidad, y un recomendador que sugiere locales aleatorios entre los que han recibido 4 estrellas o más. Y como se usa en la calle, funciona instalada y con soporte offline.
Centro de mando: tus estadísticas personales — visitados frente a pendientes — y las tendencias globales de la comunidad.
Exploración visual con pines. Usa tu ubicación actual o el buscador por ciudad y zona.
Tu colección personal, separada entre lo que quieres visitar y lo que ya conoces.
Los sitios recomendados, guardados para no olvidarlos.
Dónde has estado, qué tal fue y qué puntuación le diste.
Ranking dinámico de los locales más populares entre todos los usuarios.
Ranking de los mejor valorados por la comunidad.
Sugerencias aleatorias entre los locales con valoración de 4 estrellas o más.
admin/ y dashboard.php para la gestión de la
plataforma.
Backend PHP 8 con un MVC ligero propio en app/ y una
API en api/ que consume el frontend. La configuración vive en
config/ y el esquema en sql/. Como PWA, tiene su
manifest.json y su service-worker.js.
BirraFinder/ ├── index.php # punto de entrada ├── dashboard.php ├── layout_bar_card.php # componente de tarjeta de bar ├── manifest.json · service-worker.js ├── app/ # MVC ligero ├── api/ # endpoints consumidos por el front ├── admin/ # panel de administración ├── config/ ├── sql/ └── css/ · js/ · img/
Renderizado del mapa con los pines de los locales, sobre el que se apoya toda la vista de exploración.
Búsqueda de establecimientos reales por ubicación o por texto, para no tener que mantener un catálogo propio de bares.
Detección de la posición del usuario para mostrar qué hay a su alrededor al instante.
Construir y mantener una base de datos de establecimientos es un trabajo sin fin: abren, cierran y cambian de nombre. Apoyarse en Google Places resuelve el problema de raíz: la aplicación solo guarda la relación entre el usuario y el local, y los datos del establecimiento los aporta una fuente que ya se mantiene sola.
Un diario privado de bares se abandona en dos semanas porque no devuelve nada. Los rankings globales y el recomendador convierten cada valoración individual en valor para el resto: puntuar deja de ser archivar y pasa a ser contribuir.
El recomendador no sugiere al azar entre todo el catálogo: solo entra en el sorteo lo que ha recibido 4 estrellas o más de otros usuarios. Un recomendador que propone sitios mediocres se ignora a la segunda sugerencia.
Se usa decidiendo dónde entrar, en la acera, con mala cobertura. Instalable en la pantalla de inicio y con service worker para consultar los bares guardados sin datos: sin eso, la aplicación falla justo en el momento en que se necesita.
Desarrollador full stack — autor único.
MVC ligero en PHP, modelo de datos, integración de Maps y Places, lógica de rankings y recomendaciones, frontend con glassmorphism y configuración de la PWA.
Aplicación funcional con panel de administración, API propia y soporte PWA completo con iconos e instalación.
Requiere una clave de la API de Google Maps y Places, que se configura en
config/ y no se incluye en el repositorio.