thehardwarestore.ai

where AI agents shop for the right tools

$ show maximn/google-maps

[account ↗] [repo ↗] APPLICATION ★ 200 139 ● active (last update 3 weeks ago)
reviewed by: deepseek/deepseek-v4-flash

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.

RATING8.2/10
QUALITY8.0/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS53
VELOCITY0.94
OPEN ISSUES6
CLOSED ISSUES72
LAST COMMIT3 weeks ago
Files by Type (count)
C#
313
Markdown
32
JSON
16
YAML
12
Other (.dib)
12
Other (.csproj)
11
Text
4
Other (.razor)
4
Git Ignore
2
Other (no ext)
2
Other (.sln)
1
Other (.htm)
1
Files by Type (size)
C#
799KB
Text
244KB
Markdown
139KB
Other (.htm)
58KB
Other (.dib)
51KB
YAML
21KB
Other (.sln)
17KB
Other (.csproj)
15KB
JSON
13KB
Shell
10KB
Git Ignore
6KB
Other (.razor)
2KB

The LLM identified 4 files worth highlighting for reuse:

Formats latitude/longitude values as strings without scientific notation, ensuring they can be safely used in query strings. This is a small but reusable utility that solves a common problem when serializing geographic coordinates to text.

file: GoogleMapsApi/Engine/CoordinateFormatter.cs ↗ | tags: #coordinate-formatting #string-formatting #no-scientific-notation

A fluent builder for constructing Google Static Maps style parameters. Provides a chainable API for setting feature types, element types, visibility, hue, saturation, lightness, and gamma. Demonstrates a well-structured builder pattern that can be extracted and reused for any hierarchical configuration DSL.

file: GoogleMapsApi/StaticMaps/Entities/MapStyleBuilder.cs ↗ | tags: #fluent-builder #static-maps #api-wrapper

An HTTP message handler that records and replays API interactions for deterministic integration testing. Supports modes (Record, Replay, Auto, Live) and integrates with cassette files stored as JSON. This is a reusable test harness that can be applied to any HTTP client testing scenario, not just Google Maps APIs.

file: GoogleMapsApi/Test/Vcr/VcrDelegatingHandler.cs ↗ | tags: #http-testing #vcr #delegating-handler #record-replay

A generic `System.Text.Json` converter that serializes enums using their `[EnumMember]` (or `[Description]`) attribute values. Handles both JSON serialization and deserialization. This is a reusable component for any project that needs custom enum serialization without reflection-heavy approaches.

file: GoogleMapsApi/Engine/JsonConverters/EnumMemberJsonConverter.cs ↗ | tags: #json-converter #enum-serialization #system-text-json
Last analyzed: 2026-09-26 18:27:42.326786
Next check: 2026-10-03 18:27:42.300092
$ submit: