# gometry > A geospatial engine for Python, written in Rust. Geometry, geodesy, CRS, and H3/S2 grids with no GEOS, GDAL, or system PROJ to install. ## Documentation - [Home](https://gometry.monicz.dev/index.md): A geospatial engine for Python, written in Rust. Geometry, geodesy, CRS, and H3/S2 grids with no GEOS, GDAL, or system PROJ to install. - [Benchmarks](https://gometry.monicz.dev/about/benchmarks.md): Compare gometry with Shapely, pyproj, H3, and other Python libraries across geometry, CRS transforms, grids, and spatial indexes. - [Compatibility & deprecation policy](https://gometry.monicz.dev/about/compatibility.md): gometry runtime, platform, optional-integration, and semantic-versioning compatibility matrix. - [API conventions](https://gometry.monicz.dev/about/design.md): How gometry names operations and represents geometry, arrays, units, and errors. - [Engine and concurrency](https://gometry.monicz.dev/about/internals.md): How gometry's native engine, bundled PROJ, and concurrency model affect Python applications. - [License & notices](https://gometry.monicz.dev/about/license.md): gometry licensing, bundled CRS resources, and third-party notices. - [Security & untrusted input](https://gometry.monicz.dev/about/security.md): gometry's security posture for untrusted geometry input, parsing, pickle, and fail-fast validation. - [Support](https://gometry.monicz.dev/about/support.md): Where to file gometry bugs and security reports, and what commercial support covers. - [API reference](https://gometry.monicz.dev/api.md): Complete typed reference for gometry functions and classes. - [CRS](https://gometry.monicz.dev/api/crs.md): Coordinate reference systems, transformations, catalogs, and grid resources. - [Errors](https://gometry.monicz.dev/api/errors.md): Warnings and exceptions for geometry, CRS, transformation, and parsing failures. - [geocode](https://gometry.monicz.dev/api/geocode.md): Plus-code and OSM-shortlink codecs using explicit longitude/latitude order. - [geohash](https://gometry.monicz.dev/api/geohash.md): Geohash tokens, rectangular cells, neighbors, and area covers. - [Cells & coverages](https://gometry.monicz.dev/api/grids.md): Grid-generic cells and the shared columnar CellArray container. - [h3](https://gometry.monicz.dev/api/h3.md): H3 hexagonal cells, area covers, neighbors, directed edges, and vertices. - [Optional interop](https://gometry.monicz.dev/api/interop.md): Convert dataframe columns, read and write GeoParquet, and display maps. - [Results](https://gometry.monicz.dev/api/results.md): Named result values and aligned feature records returned by multi-output operations. - [s2](https://gometry.monicz.dev/api/s2.md): S2 spherical cells, fixed-level and adaptive covers, and hierarchical cell sets. - [Spatial index](https://gometry.monicz.dev/api/spatial-index.md): Bulk spatial indexing for repeated relationship queries. - [tiles](https://gometry.monicz.dev/api/tiles.md): Web Mercator XYZ tiles, quadkeys, tile hierarchies, and area covers. - [Type definitions](https://gometry.monicz.dev/api/types.md): Public annotation forms, result records, and structured values. - [Coordinates, parts & groups](https://gometry.monicz.dev/api/geometry/coordinates.md): Coordinate views, multipart views, and grouped results. - [Geometry types](https://gometry.monicz.dev/api/geometry/geometry-types.md): The seven typed geometry classes and the members unique to each type. Shared operations live on Geometry. - [Geometry](https://gometry.monicz.dev/api/geometry/geometry.md): Methods and properties shared by all geometry types. - [GeometryArray](https://gometry.monicz.dev/api/geometry/geometryarray.md): The immutable columnar geometry container, with NumPy-native results and the same operation names as Geometry. - [Constructive & validation](https://gometry.monicz.dev/api/toplevel/constructive-validation.md): Split, snap, polygonize, and validate geometry. - [Constructors & bulk factories](https://gometry.monicz.dev/api/toplevel/constructors-bulk-factories.md): Construct geometry values and packed coordinate columns. - [Coverage (polygonal)](https://gometry.monicz.dev/api/toplevel/coverage-polygonal.md): Validate, clean, simplify, and union edge-sharing polygon coverages. - [Geodesy & navigation](https://gometry.monicz.dev/api/toplevel/geodesy-navigation.md): Bearings, destinations, route interpolation, and cross-track distance. - [Index & join](https://gometry.monicz.dev/api/toplevel/index-join.md): Spatial joins and nearest-neighbor queries over geometry columns. - [IO & interop](https://gometry.monicz.dev/api/toplevel/io-interop.md): Parse external representations, export coordinates, and build GeoJSON feature records. - [Measurement](https://gometry.monicz.dev/api/toplevel/measurement.md): Area, length, distance, nearest points, and similarity measures. - [Overlay & dissolve](https://gometry.monicz.dev/api/toplevel/overlay-dissolve.md): Binary set operations and reductions over geometry collections. - [Predicates](https://gometry.monicz.dev/api/toplevel/predicates.md): Binary spatial relationships, coordinate probes, and DE-9IM predicates. - [Ecosystem & interoperability](https://gometry.monicz.dev/ecosystem.md): How gometry fits the Python geospatial stack — NumPy, Arrow/GeoArrow, GeoParquet, pandas, polars, GeoPandas, and lonboard, with explicit copy behavior. - [Arrow & storage](https://gometry.monicz.dev/ecosystem/arrow.md): Arrow C Data Interface and GeoArrow interchange in gometry — dependency-free PyCapsules, packed layouts, pyarrow via gometry[arrow], and GeoParquet. - [DataFrames](https://gometry.monicz.dev/ecosystem/dataframes.md): Typed conversion between GeometryArray and pandas, Polars, or GeoPandas, with lazy optional integrations and pandas dtype discovery. - [NumPy arrays & coordinates](https://gometry.monicz.dev/ecosystem/numpy.md): NumPy interchange in gometry — read-only typed ndarrays for every bulk result, accepted PEP-3118 input buffers, zero-copy coordinate columns, and SciPy handoffs. - [Text & binary formats](https://gometry.monicz.dev/ecosystem/text-formats.md): gometry text and binary IO — WKB/EWKB for databases, WKT/EWKT, GeoJSON Z/M rules, Features.__geo_interface__, pickle, and CRS/epoch round-trip behavior. - [Installation](https://gometry.monicz.dev/get-started/installation.md): Install gometry from PyPI — NumPy is required, with no system GEOS, GDAL, or PROJ installation. - [The mental model](https://gometry.monicz.dev/get-started/mental-model.md): Gometry's operation-led model: declare, transform, refine; choose a metric frame; use planar topology; and partition with spatial keys. - [Quickstart](https://gometry.monicz.dev/get-started/quickstart.md): Find blocks within 500 meters of a station, then cover the area with H3 cells. - [Guide overview](https://gometry.monicz.dev/guide.md): A task-oriented map of gometry's user guide: construct, measure, query, aggregate, repair, exchange, and choose operations. - [Arrays & performance](https://gometry.monicz.dev/guide/arrays.md): Work with GeometryArray, CellArray, broadcasting, ragged results, and missing rows. - [Choosing the right tool](https://gometry.monicz.dev/guide/choosing.md): Decision tables for the operations that look alike — which predicate, which cleaner, which acceleration structure, which clipping call. - [Constructive operations](https://gometry.monicz.dev/guide/constructive.md): Constructive geometry in gometry — buffers, overlays, simplify, offset curves, snap, segmentize, hulls, centroids, triangulation, and Voronoi. - [CRS, units & measurement](https://gometry.monicz.dev/guide/crs.md): CRS declaration and transformation in gometry — units for area, length, distance, and buffers, projected CRS choice, epochs, and antimeridian behavior. - [Errors & exceptions](https://gometry.monicz.dev/guide/errors.md): Catch geometry errors, diagnose common failures, and identify failing array rows. - [Geometry & dimensions](https://gometry.monicz.dev/guide/geometry.md): Constructing, inspecting, and comparing gometry's seven geometry types, plus XY/XYZ/XYM/XYZM layouts and Z/M behavior through operations. - [Grids & geocodes](https://gometry.monicz.dev/guide/grids.md): H3, S2, geohash, and XYZ tile grids in gometry, plus point geocodes, spherical cells, space-filling keys, and cell-selection rules. - [Spatial indexing & joins](https://gometry.monicz.dev/guide/indexing.md): gometry spatial indexing — candidates (bbox prefilter) vs query predicate refinement, nearest with units, and joins for many-to-many work. - [Spatial predicates](https://gometry.monicz.dev/guide/predicates.md): gometry spatial predicates — contains, intersects, touches, crosses, overlaps, equals, boundary semantics, DE-9IM, and vectorized forms. - [Validation & repair](https://gometry.monicz.dev/guide/validation.md): Validate and repair gometry geometries, enforce CRS and axes contracts, and remove repeated points or excess coordinate precision. - [Migrating to gometry](https://gometry.monicz.dev/migrating.md): Migrating to gometry from Shapely, pyproj, h3-py, s2sphere, and rtree with per-library symbol mappings and behavior notes. - [Migration cheatsheet](https://gometry.monicz.dev/migrating/cheatsheet.md): Searchable old-symbol → gometry-spelling reference tables, grouped by source library (Shapely, pyproj, h3-py, s2sphere, rtree).