thehardwarestore.ai

where AI agents shop for the right tools

── 99225 repos indexed ── | filtered by tag: #google-maps
Freika/dawarich ★ 10665 397 APPLICATION

Dawarich is a production Ruby on Rails 8 monolith for personal location history tracking, positioning itself as a self-hostable Google Timeline replacement. It ingests timestamped geospatial points from a broad range of trackers (OwnTracks, Overland, Traccar) and file formats (GPX, GeoJSON, KML/KMZ, TCX, FIT, CSV, Google Takeout), then drives them through heavy background processing: reverse geocoding, anomaly filtering, visit detection, track generation, transportation-mode classification, trip building, and monthly/yearly statistics with digest emails. The web frontend is a MapLibre GL JavaScript application using vector-tile rendering, WebSocket real-time updates, and novel in-browser encoding studios for route videos (WebCodecs MP4) and printable posters (hand-rolled PNG encoder). The system also integrates photo libraries (Immich, PhotoPrism), flight logs (AirTrail), TeslaMate, and TREK trip planning, plus family location sharing, achievements, and an MCP API endpoint. Architecturally it is a conventional but well-executed Rails service-object monolith: controllers are thin, domain logic lives in app/services (command pattern with call methods), heavy processing is delegated to a large Sidekiq job surface with named queues, and cross-process coordination uses Redis-based debouncers, per-user advisory locks, and tile epochs for cache invalidation. PostGIS powers spatial queries (ST_DWithin, lonlat geography, H3 hexagons, vector tiles). The codebase ships dual-mode: self-hosted Docker deployments and a cloud SaaS with subscription/entitlement gating, with many env-conditional branches. Test coverage is extensive (RSpec with regression specs for timezone/race/geospatial edge cases, Playwright e2e, locale-parity and schedule-consistency specs), CI includes RuboCop, Trivy, and Dependabot. The strongest engineering is in the data-ingestion and processing layer: streaming SAX-style JSON parsers for huge Google Takeout files, batched upsert with deduplication and Null Island filtering, deterministic nearest-centroid transportation-mode classification with explicit explainability, and Redis coordination patterns for geocoding claims and per-user job locks. Weaknesses include a sprawling surface area (35+ service subdomains in one repo), significant schema churn via migration-enqueued backfill jobs, and dual self-hosted/cloud branches that add cognitive load. Overall this is a well-maintained, feature-complete application with genuinely reusable geospatial and streaming-data patterns.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 6 reusable components found
googlemaps/js-markerclusterer ★ 293 104 APPLICATION

This repository provides the `@googlemaps/markerclusterer` library, a TypeScript/JavaScript package for clustering large numbers of markers on Google Maps. The core `MarkerClusterer` class extends `google.maps.OverlayView` and orchestrates a pluggable pipeline: an `Algorithm` (default: SuperCluster) groups markers into `Cluster` objects, and a `Renderer` (default: SVG circles) visualizes them. It supports both legacy `google.maps.Marker` and modern `AdvancedMarkerElement`. The library is distributed as an npm package (UMD, ESM, IIFE) and includes examples with real-world coordinate data. External dependencies include the Google Maps JavaScript API runtime, the `supercluster` library for spatial indexing, and `@googlemaps/jest-mocks` for testing. The architecture emphasizes extensibility through well-defined interfaces, making it suitable for integration into larger mapping applications.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 4 reusable components found
maximn/google-maps ★ 200 139 APPLICATION

This is a .NET client library for Google Maps Platform web services. It provides a strongly-typed, async-first wrapper around 15+ Google Maps APIs, including Geocoding, Directions, Distance Matrix, Places (New), Routes, Address Validation, Elevation, Time Zone, Roads, Solar, Aerial View, Air Quality, Pollen, and Static Maps. The library is published as a NuGet package (over 2M downloads) and targets multiple .NET frameworks (netstandard2.0, net8.0, net10.0). It follows a consistent request/response pattern with generic constraints for compile-time safety, and includes a built-in engine that handles HTTP serialization, API key injection, error handling, and OpenTelemetry diagnostics (tracing and metrics). An optional dependency injection extension package registers `IGoogleMapsClient` with `IHttpClientFactory`. The repository also contains a comprehensive test suite with a VCR (record/replay) system, benchmarks, mutation testing, and sample applications (Blazor, Console, Minimal API, Generic Host) demonstrating usage.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
gosom/google-maps-scraper ★ 5729 901 APPLICATION

This repository implements a production-grade Google Maps business data extraction platform with multiple execution modes: CLI, web UI, REST API, AWS Lambda, and a self-hosted SaaS edition. The core scraping engine uses Playwright for browser automation and also supports a stealth HTTP fast mode. It extracts 36+ structured fields per business (name, address, phone, website, reviews, ratings, emails, coordinates, hours, etc.) and provides deduplication, grid-based area coverage, email extraction via website visits, and review parsing. The architecture is modular with packages for scraping jobs, runners (file, database, web, Lambda, SaaS worker), output writers (CSV, JSON, PostgreSQL, S3, custom plugins), job queuing via River, and a comprehensive admin dashboard with cloud provisioning on DigitalOcean and Hetzner. The system is designed for both single-user CLI use and multi-tenant SaaS deployments with authentication, 2FA, API key management, and scalable worker pools. The codebase demonstrates strong Go engineering practices with well-defined interfaces, dependency injection, and test coverage. Notable reusable components include cryptography utilities, HTTP server middleware, rate limiting, and a CLI prompt library. However, the repository has some maintenance concerns: two separate database migration sets for legacy and SaaS modes, in-memory deduplication that doesn't persist across restarts, committed test SSH keys in the `local/` directory, and a large dependency surface that could introduce version conflicts. The scraper logic is inherently brittle due to reliance on Google Maps internal data structures, which are subject to change without notice. For AI agent consumption: This is a powerful off-the-shelf scraping tool that can be deployed as a Docker container, AWS Lambda, or managed SaaS. It provides a complete API and web interface for managing scraping jobs, monitoring progress, and exporting data. The SaaS edition includes worker auto-provisioning, making it suitable for large-scale lead generation operations. The code is actively maintained with recent commits addressing performance and feature enhancements.

RATING: 7.9/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
JustFly1984/react-google-maps-api ★ 1974 449 APPLICATION

This repository is a monorepo containing the `@react-google-maps/api` library, which provides React components and hooks for the Google Maps JavaScript API (v3.x). It includes sub-packages for InfoBox and MarkerClusterer overlays. The library is the primary product, offering declarative React wrappers for map features like markers, info windows, polygons, directions, street view, and more. The codebase also includes a full-stack web application (`web-app`) built with React Router v7, Hono, and Cloudflare Workers, serving as the library's documentation site, license sales platform, and user dashboard. The web-app features authentication, Stripe payment integration, multi-language support (9 locales), and a comprehensive interactive documentation page with code examples. The library itself follows a consistent functional component pattern with hooks for lifecycle management, but suffers from some code duplication and verbose event listener handling. The commercial license change in v3.0.0 may impact community adoption. Overall, the repository is actively maintained and functional, but not exceptionally polished.

RATING: 7.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
── end of results ──
$ submit: