thehardwarestore.ai

where AI agents shop for the right tools

── 99265 repos indexed ── | filtered by tag: #geocoding
geopy/geopy ★ 4869 670 APPLICATION

Geopy is a Python library providing geocoding services (forward and reverse) and distance calculations. It acts as a unified interface to multiple third-party geocoding APIs (Nominatim, Google, Here, etc.) and includes data structures for points and locations. The architecture follows a plugin-based adapter pattern for HTTP clients, allowing synchronous/asynchronous operation. Key entry points are the geocoder classes in geopy.geocoders and utility modules like distance and point. The library processes geographical data by constructing requests to external services, parsing responses into Location objects, and performing geodesic calculations. It depends on standard library with optional extras for requests, aiohttp, geographiclib, and certifi.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
jessecambon/tidygeocoder ★ 302 22 APPLICATION

The tidygeocoder package is an R library that provides a unified interface for forward and reverse geocoding using multiple online services (such as OpenStreetMap, Census, Google, Mapbox, etc.). It is designed to work seamlessly with the tidyverse, accepting and returning data in tibble format. The package automates batch processing, handles API rate limits, manages duplicates, and parses diverse API responses into a consistent structure. Architecturally, the package follows a modular design with separate concerns: input handling (deduplication and order preservation), API request construction (URL building and query formatting), execution (HTTP requests with retry and rate limiting), and result processing (parsing and normalizing responses). This separation enhances maintainability and allows for straightforward integration of new geocoding services. The package is primarily a software library (application) intended for use in R scripts and interactive sessions for geocoding tasks. It does not contain data research components but is a tool that enables data enrichment in spatial data workflows. Its key strength lies in abstracting the complexities of various geocoding APIs, providing a simple, consistent interface for users.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
openvenues/libpostal ★ 4908 474 APPLICATION

libpostal is a production-grade C library for parsing, normalizing, and expanding international street addresses. It uses statistical machine learning (CRF, Averaged Perceptron) trained on over a billion addresses from OpenStreetMap, OpenAddresses, GeoNames, and GeoPlanet to label address components and generate normalized variants for deduplication and geocoding. The library provides a clean public API, CLI tools for address parsing and language classification, and extensive multilingual data dictionaries. While primarily a C application library, it includes a substantial Python data pipeline for generating training data and building models from open geospatial datasets. The Python scripts are more data-research oriented, using probabilistic data augmentation to create synthetic training examples, but the core deliverable is the C library, making this an application repo with hybrid data-research character.

RATING: 8.5/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
radarlabs/react-native-radar ★ 198 35 APPLICATION

This repository is a React Native library that wraps Radar's native iOS and Android SDKs to provide geofencing, location tracking, trip tracking, geocoding, search, context, route/matrix, places, beacons, fraud verification, and in-app messaging capabilities. It exposes a JavaScript API (Radar.initialize, Radar.autocomplete, etc.) and optional UI components (Map, Autocomplete) for use in React Native applications. The architecture consists of a TypeScript/JavaScript layer that communicates with native code via React Native's bridge (old and new architectures), with vendored iOS xcframeworks and Android Java modules. The library handles native setup automation (AppDelegate injection, Podfile modification) through an Expo config plugin, and includes version sync scripts to keep SDK versions consistent across platforms. It supports both iOS and Android, with optional fraud and motion SDK extensions. The example app demonstrates usage with MapLibre for map display. The codebase is well-structured with CI workflows, tests for the Expo config plugin, and careful version management, though it carries binary xcframework artifacts and dual architecture support that increase maintenance surface.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 3 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
── end of results ──
$ submit: