geojson
Python bindings and utilities for GeoJSON
Decision gist · record as of 2026-08-14
Yes. geojson is a stable, actively maintained library with zero dependencies, permissive licensing, and no known vulnerabilities. It directly implements the GeoJSON specification and is well-suited for any Python project handling geographic data. Install it if you need to work with GeoJSON in a Python application.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- Low friction install with no runtime dependencies.
- Actively maintained with recent releases; repository shows 994 stars and current Python version support (3.10–3.14).
License · maintenance · safety
BSD (permissive) — BSD permissive license allows use in most projects without significant restrictions on modification or distribution.
last release 2026-05-28 (78 days) · last repo commit 2026-06-06 · 994 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 4,395,724 downloads/mo, #2,313 on PyPI
Alternatives
Verify before relying
pip install geojson
from geojson import Point, Feature, FeatureCollection
point = Point((-115.81, 37.24))
feature = Feature(geometry=point, properties={"name": "example"})
collection = FeatureCollection([feature])What it is and what it does
geojson is a Python library for working with GeoJSON, the standard text-based format for encoding geographic data structures. It provides classes representing all GeoJSON object types—Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature, and FeatureCollection—along with encoding and decoding functions. Each class implements the __geo_interface__ specification, allowing objects to be used as attributes or indexed directly when nested in collections.
The library is designed for developers and researchers working with geographic information systems (GIS) data. It handles the conversion between Python objects and GeoJSON-formatted JSON, making it straightforward to construct geographic features programmatically, serialize them for storage or transmission, and parse incoming GeoJSON data. With no external dependencies and support for modern Python versions, it integrates easily into geospatial workflows.
Use it for
- Build geographic features (points, lines, polygons) and wrap them in Feature objects with properties for mapping applications.
- Parse and validate incoming GeoJSON data from APIs or files into typed Python objects for further processing.
- Serialize geographic data to GeoJSON format for storage in databases or transmission over HTTP to web mapping clients.
- Construct FeatureCollections containing multiple geographic features with associated metadata for batch geospatial operations.
- Implement __geo_interface__ on custom objects to make them compatible with GeoJSON serialization workflows.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
geojson is a stable, actively maintained library with zero dependencies, permissive licensing, and no known vulnerabilities. It directly implements the GeoJSON specification and is well-suited for any Python project handling geographic data. Install it if you need to work with GeoJSON in a Python application.
Install
geojson on PyPI
Before you install
Low friction install with no runtime dependencies. Actively maintained with recent releases; repository shows 994 stars and current Python version support (3.10–3.14).
Requires Python 3.10 or later.
License in practice
BSD permissive license allows use in most projects without significant restrictions on modification or distribution.
Quickstart
pip install geojson
from geojson import Point, Feature, FeatureCollection
point = Point((-115.81, 37.24))
feature = Feature(geometry=point, properties={"name": "example"})
collection = FeatureCollection([feature])
Package facts
| License | BSD permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 78 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 4,395,724 / month, #2,313 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/Engineering :: GIS |
Evidence: geojson-3.3.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “geojson encoding decoding”
- geojsonEncodes, decodes, and represents GeoJSON formatted geographic data…
- polylineEncodes and decodes geographic coordinate sequences using Google's…
- geobufGeobuf encodes GeoJSON to a compact binary format and decodes it…
Give your agent the search over MCP, or paste the wish link into any chat.
More GIS packages
Shapely provides Python tools for creating, manipulating, and analyzing 2D geometric objects (points, lines, polygons) using the GEOS library, with both scalar and vectorized NumPy-based operations.
pyproj provides a Python interface to PROJ, enabling cartographic projections and coordinate system transformations for geospatial applications.
GeoPandas extends pandas DataFrames to handle geographic data, combining pandas operations with shapely geometry and spatial analysis capabilities that would otherwise require a spatial database.
Install it if you work with geographic data in Python and want to avoid setting up a spatial database or learning a separate GIS tool.
geopy is a Python client for geocoding and distance calculation that converts addresses to coordinates and vice versa using multiple web-based geocoding services, and computes geodesic and great-circle distances between geographic points.
Install it if you need geocoding or distance calculations in your application.
Pyogrio provides fast, bulk-oriented read and write access to vector spatial data formats (Shapefile, GeoPackage, GeoJSON, etc.) via GDAL/OGR bindings, typically for use with GeoPandas GeoDataFrames.
h3 provides Python bindings to Uber's H3 geospatial indexing library, converting geographic coordinates into hierarchical hexagonal grid cells and performing spatial operations on them.
See also arcgis2geojson · cligj · djangorestframework-gis · pydantic-geojson · pygeoif · kml2geojson · osm2geojson · geomet · topojson · plpygis