Awesome Lists

awesome-georust

by pka

awesome listpushed almost 2 years ago

A curated list of awesome geospatial software, libraries, tools and resources, written in Rust

AI summary

Geospatial library collection

A curated collection of Rust libraries and tools for geospatial data processing and analysis

stars
314
forks
18
watching
16
awesome list
1
entries
122
View on GitHub

Embed the badge

Show how many awesome lists link to your project. The count updates automatically.

Awesome Lists badge
Markdown
[![Awesome Lists Badge](https://awesome.facts.dev/shield/pka/awesome-georust/links.svg)](https://awesome.facts.dev/awesome/pka/awesome-georust)
HTML
<a href="https://awesome.facts.dev/awesome/pka/awesome-georust"><img src="https://awesome.facts.dev/shield/pka/awesome-georust/links.svg" alt="Awesome Lists Badge" /></a>
Image URL
https://awesome.facts.dev/shield/pka/awesome-georust/links.svg

What's in the list

122 links in 14 sections, with live GitHub stats.activeno commit in 2y

Contents / Geospatial primitives and algorithms

  • Geo

    Geospatial primitives such as Point & LineString, and algorithms such as distance, convex hull, centroidcalculations

  • GEOS

    Bindings for the Geometry Engine - Open Source (GEOS) library

  • Robust

    Robust primitives for computational geometry

  • PROJ

    Bindings for the PROJ library for coordinate transformation and projections

  • Rust Geodesy

    A geodesy library written in Rust

  • geographiclib-rs

    A port of geographiclib (geodesic calculations)

  • S2

    S2 spherical geometry library in Rust

  • rust-geo-booleanop

    Rust implementation of the Martinez-Rueda Polygon Clipping Algorithm

  • intersect2d

    Line intersection sweep-line algorithm

  • spatial-join

    Perform streaming geospatial-joins on geographic data

  • tile-grid

    Library for map tile grid calculations

  • zonebuilder

    Build zones for large geographic regions

  • Polylabel-rs

    A Rust implementation of the Polylabel algorithm, with FFI

  • cheap-ruler-rs

    Collection of very fast approximations to common geodesic measurements

Contents / Spatial index / Partioning

  • rstar

    R*-tree library for the rust ecosystem

  • kdbush

    A Rust port of kdbush, a fast static spatial index for 2D points

  • spade

    Delaunay Triangulations for the Rust ecosystem

  • delaunator-rs

    A very fast static 2D Delaunay triangulation library for Rust

  • earcutr

    Port of MapBox's earcut triangulation code to Rust language

  • boostvoronoi

    Segmented Voronoi for Rust

Contents / Handling GIS data formats

  • GDAL

    Bindings for the Geographic Data Abstraction Library (GDAL) for reading and writing raster and vector GIS files

  • GeoZero

    Zero-Copy reading and writing of geospatial data

  • GeoJSON

    Work with GeoJSON files

  • GPX

    Work with GPS files

  • kml

    Rust support for reading and writing KML

  • GeoTIFF

    Work with GeoTIFF raster files

  • image-tiff

    TIFF decoding and encoding library in pure Rust

  • netCDF

    Bindings for Network Common Data Form (netCDF) library. Can read and write HDF5 files

  • hdf5-rust

    Thread-safe Rust bindings and high-level wrappers for the HDF5 library API

  • N5

    N5 "Not HDF5" tensor file system format

  • RINEX

    RINEX analysis & and processing

  • shapefile-rs

    Rust library to read & write shapefiles

  • TileJSON

    Work with TileJSON files

  • Transit

    Work with GTFS files

  • transit_model

    Manage, convert and enrich transit data

  • FastGtfs

    GTFS parsing, navigation, time table creation, and real-time network simulation

  • gtfs-structures

    Read GTFS files into structs, with smart references

  • WKT

    Work with Well-Known Text (WKT) files

  • World file

    Work with World-files

  • FlatGeobuf

    A performant binary encoding for geographic data based on flatbuffers

  • las-rs

    Read and write ASPRS las files

  • stac-rs

    Rust implementation of the SpatioTemporal Asset Catalog (STAC) specification

  • pgstac-rs

    Rust interface for

Contents / Raster and image processing

  • rasters.rs

    Raster processing library and tools written in rust

  • geo-rasterize

    A pure-rust 2D rasterizer for geospatial applications

Contents / OSM data handling

  • osmpbfreader-rs

    Read OpenStreetMap PBF files

  • osmpbf

    Library for reading the OpenStreetMap PBF file format

  • osm_boundaries_utils_rs

    Read OpenStretMap relations with type=boundary as valid MultiPolygon

  • osm-transit-extractor

    Extract OSM public transport data and write to CSV files

  • Pbfextractor

    Create graph files out of OSM and SRTM data

  • osmflat

    OpenStreetMap flatdata format and compiler

  • osmx

    Rust port of OSMExpress, a fast database file format for OpenStreetMap

  • osm-lump-ways

    Group OSM ways based on topology & shared tags

Contents / 3D

  • density mesh

    Image density/height map to mesh generator

  • startin

    A Delaunay triangulator for processing TINs

  • geom3d

    Data structures and algorithms for 3D geometric modeling

Contents / Geocoding

  • GeoHash

    Compute geohash of locations

  • Geocoding

    Enrich addresses, cities, countries with geographic coordinates through third-party geocoding web services

  • Mimirsbrunn

    Geocoding and reverse-geocoding (with OSM data)

Contents / Routing

  • Fast Paths

    Fast shortest path calculations for Rust

  • osm_ch

    OSM-Contraction-Hierarchies

  • routrs

    Geograph-based shortest distance calculation for Rust

Contents / Web Services

  • t-rex

    Vector tile server specialized on publishing MVT tiles from your own data

  • Martin

    Blazing fast and lightweight PostGIS vector tiles server

  • Hecate

    Fast Geospatial Feature Storage API

  • BBOX services

    Composable spatial services

Contents / Map rendering

  • osm-renderer

    OpenStreetMap raster tile renderer

Contents / Applications

  • A/B Street

    A traffic simulation game exploring how small changes to roads affect cyclists, transit users, pedestrians, and drivers

  • Geo Engine

    Cloud-ready geospatial data processing platform with workflows, raster vector support and OGC-compliant interfaces

  • rgis

    Performant, cross-platform (web, desktop) GIS app written in Rust

  • sst

    streaming startin

  • WhiteboxTools

    Geospatial data analysis platform with more than 465 tools for processing various types of geospatial data

  • Ferrostar

    A FOSS navigation SDK built from the ground up for the future

Watchlist

  • Miniproj

    Geographic transformations between different coordinate systems defined by the European Petroleum Survey Group

  • coord_transforms

    Rust crate for performing coordinate transforms

  • maplibre-rs

    Native Maps for Web, Mobile and Desktop

  • RGeometry

    Computational Geometry library written in Rust

  • offset-polygon

    A Rust crate for offsetting (shrinking/expanding) polygons

  • polygon-offsetting

    Offset a polygon (only margin)

  • Cavalier Contours

    2D polyline/shape library for offsetting, combining, etc

  • map-engine

    A rust library to work with tiled geospatial (raster) data

  • rust_road_router

    Rust routing framework and toolkit

  • Sailor

    A sailing navigation application

  • OGC API

    OGC API building blocks

  • copc-rs

    COPC reader

  • zarrs

    A rust library for the Zarr V3 storage format for multidimensional arrays and metadata

  • pasture

    A Rust library for working with point cloud data

  • h3o

    Rust implementation of the H3 geospatial indexing system

  • PlanetVectorTile

    A map engine enabling you to have the entire map of the OSM planet on your own computer

  • GeoPolars

    Geospatial extensions for Polars

  • country-geocoder

    Reverse geocode WGS84 coordinates to an ISO country-code

  • Skeleton Tracing

    A new algorithm for retrieving topological skeleton as a set of polylines from binary images

  • poly2tri-rs

    Calculate CDT (Constrained Delaunay Triangulation) on a polygon

  • PMTiles (for Rust)

    Rust implementation of PMTiles

  • PMTiles (for Rust)

    Low level implementation of the PMTiles format

  • s2-pmtiles

    Read/Write PMTiles V3.0 as well as S2PMTiles V1.0

  • Proj4rs

    Rust adaptation of Proj4

  • Proj4wkt

    Parse WKT to Proj strings

  • Louvre

    Computational Geometry Library with Rust

  • gpkg-rs

    A Rust crate for reading and writing GeoPackages

  • georaster

    Rust library for accessing geospatial raster images (GeoTIFF)

  • sif-rtree

    and - R and K-D trees which can be memory-mapped directly from disk

  • geo-index

    Packed, static, zero-copy spatial indexes (R-tree and k-d tree)

  • jord

    Geographical Position Calculations (spherical + ellipsoidal models and local frames)

  • tzf-rs

    Get timezone via longitude&latitude in Rust in a fast way

  • geometry-rs

    Partial port of tidwall/geometry (efficient 2D geometry library for Go)

  • pasture

    Rust library for point cloud processing

  • rout3serv

    H3-grid based Routing server with GRPC-API and dataframe integration

  • Airmail

    Lightweight geocoder in pure Rust

  • geoserde

    Adapter between geographic feature and GIS files

  • geojson-vt-rs

    Crate for slicing GeoJSON into vector tiles on the fly

  • The Roaring Landmask

    A fast and memory-limited landmask based on GSHHG for determing whether a point on Earth is on land or in the ocean

  • Galileo

    General purpose cross-platform geo-rendering library

  • Gauzilla

    3D Gaussian Splatting renderer for WebAssembly with lock-free multithreading

  • utiles

    utils & tiles w/ (rs & pyo3)

  • earclip

    Triangle mesh designed to be fast, efficient, and sphere capable

  • iOverlay

    Boolean Operations for 2D Polygons: Supports intersection, union, difference, xor, and self-intersections for all polygon varieties

Resources / crates.io

Resources / Community

More related projects

Add a GitHub project

Missing a project or an awesome list? Paste its GitHub URL and we fetch it right away.