Big speedups in deck.gl-raster v0.7: Retina display support, faster GPU pixel filtering, minimized latency to render 200GB COGs, center-out tile loading developmentseed.org/deck.gl-rast... Thanks to @developmentseed.org for supporting this work!
Kyle Barron
@kylebarron.dev
Creating the next generation of geospatial data tools for Python & the browser with GeoArrow, GeoParquet & GeoRust @developmentseed | he/him ๐
New deck.gl-raster example that compares two image sources with a slider. developmentseed.org/deck.gl-rast...
New: Zarr support in deck.gl-raster! Here's a GPU-driven animation of Zarr temperature forecasts, fully client-side, no server involved. developmentseed.org/deck.gl-rast...
Native Cloud-Optimized GeoTIFF support in Lonboard! - Stream massive COGs on demand - Full control over image rendering: apply colormaps, change band combinations, use ML models - Read COGs from anywhere, including local files and private data (via Obstore) developmentseed.org/lonboard/lat...
An interactive geotiff viewer extension for #vscode / #positron powered by @kylebarron.dev's amazing deck.gl-raster. Just click on a tif file and take a peek. Early days but give it a spin and let me know if there are any issues. โ๏ธ github.com/belian-earth...
GitHub - belian-earth/rastereye: Quick GeoTIFF viewer for VS Code and Positron
Quick GeoTIFF viewer for VS Code and Positron. Contribute to belian-earth/rastereye development by creating an account on GitHub.
github.com
Three updates in deck.gl-raster v0.4: 1. New example for NDVI filtering on the GPU 2. When zooming in, render coarser image data while higher-res data is still loading 3. Fixed reprojection and rendering at high latitudes developmentseed.org/deck.gl-rast...
๐๐๐๐ค.๐ ๐ฅ-๐ซ๐๐ฌ๐ญ๐๐ซ ๐ฏ0.3: fast GeoTIFF visualization in deck.gl - ๐๐๐ฐ ๐๐ฒ๐ฉ๐๐๐๐ซ๐ข๐ฉ๐ญ ๐๐๐จ๐๐๐ ๐ ๐ฅ๐ข๐๐ซ๐๐ซ๐ฒ: high-level & fully-typed. We've fully migrated off of geotiff.js - ๐๐ฎ๐ญ๐จ ๐๐จ๐๐๐ญ๐ ๐ฆ๐๐ฌ๐ค๐ข๐ง๐ - ๐๐จ๐ฆ๐ฉ๐ซ๐๐ฌ๐ฌ๐๐ ๐๐๐๐ ๐๐๐ญ๐๐๐๐ฌ๐ to 309kb - ๐๐๐ฐ ๐ฉ๐จ๐ซ๐ญ๐ฌ of Affine and Morecantile to TS developmentseed.org/deck.gl-rast...
Also in Lonboard, new logo! Designed by @gusbusdraws.bsky.social, who also designed the @developmentseed.org Cloud Native Zine developmentseed.org/blog/2025-02... zines.developmentseed.org/zines/cloud-...
Lonboard v0.15 now supports geocoding! Easily jump the map to locations, using any geocoder service of your choice. developmentseed.org/lonboard/lat... @developmentseed.org
New Lonboard release makes the first step towards rich ๐ซ๐๐ฌ๐ญ๐๐ซ data visualization in Python, starting with PMTiles! developmentseed.org/lonboard/lat... - New RasterLayer, supporting PMTiles input via async-pmtiles github.com/developments... - New support for categorical data filtering on the GPU
Building on Vincent Sarago's work, I updated and published ๐๐ฌ๐ฒ๐ง๐-๐ฉ๐ฆ๐ญ๐ข๐ฅ๐๐ฌ, an asynchronous PMTiles reader for Python: github.com/developments... This integrates with Obstore for efficiently reading remote files and Obspec for extensibility.
GitHub - developmentseed/async-pmtiles: Asynchronous PMTiles reader for Python
Asynchronous PMTiles reader for Python. Contribute to developmentseed/async-pmtiles development by creating an account on GitHub.
github.com
Published a new version of async-geotiff: - Support for reading band-interleaved GeoTIFFs and Cloud-Optimized GeoTIFFs - Initial support for decoding LERC, LERC_DEFLATE, LERC_ZSTD images - Fix computation of image bounds and resolution for rotated images github.com/developments...
Release v0.2.0 ยท developmentseed/async-geotiff
New Features feat: Support for band-interleaved data by @kylebarron in #80 feat: Add LERC decompression support by @kylebarron in #79 Fixes fix: Fix computation of bounds and res for rotated dat...
github.com
Introducing ๐๐ฌ๐ฒ๐ง๐-๐๐๐จ๐๐๐ ๐ , a new library for reading GeoTIFFs and COGs. developmentseed.org/async-geotif... - Fast, with a Rust core - Uses a non-blocking thread pool for image decoding - Integrates with NumPy, PyProj, Affine & Morecantile - Remote data support with Obstore - No GDAL dependency
Introducing Async-GeoTIFF - async-geotiff
A fast, async GeoTIFF and Cloud-Optimized GeoTIFF (COG) reader for Python.
developmentseed.org
New version of async-tiff: Fast, async reading of TIFFs, GeoTIFFs & COGs in Rust and Python: developmentseed.org/async-tiff - New Array class for zero-copy data sharing between Rust/numpy - Separate CPU-bound and IO-bound work, decoding image data in a thread pool - Revamped metadata block caching
async-tiff
A fast, low-level async TIFF reader powered by Rust.
developmentseed.org
wikipedia turns 25 today! the last unenshittified major website! backbone of online info! triumph of humanity! powered by urge of unpaid randos to correct each other! somehow mostly reliable! "good thing wikipedia works in practice, because it sure doesn't work in theory" - old wiki adage
Visualize a mosaic of NAIP imagery loaded from @microsoft.com Planetary Computer COGs, all in your browser, no server involved. Render true color, false color infrared, or NDVI. developmentseed.org/deck.gl-rast... Built at @developmentseed.org with deck.gl-raster: github.com/developments...
Announcing deck.gl-raster: ๐๐ฎ๐ฅ๐ฅ๐ฒ ๐๐ฅ๐ข๐๐ง๐ญ-๐ฌ๐ข๐๐ ๐๐๐ ๐ซ๐๐ง๐๐๐ซ๐ข๐ง๐ . No server required. 1.3 ๐ ๐ข๐ ๐๐๐ฒ๐ญ๐ COG, streamed directly into the browser: developmentseed.org/deck.gl-rast... - GPU-accelerated raster reprojection - GPU image processing for colormaps, nodata values - Efficient use of COG overviews
Released Lonboard v0.13! - New layer types: H3, S2, Geohash, A5 and fixed HeatmapLayer - Render data layers beneath Maplibre text labels - Map UI controls: scale, fullscreen, navigation - Significant performance improvements: fixing earlier regressions developmentseed.org/lonboard/lat...
I'm happy to announce I've been promoted to an Apache Arrow Committer, meaning I'm authorized to merge code patches into Arrow repositories! I join this list of amazing people: arrow.apache.org/committers/
Committers
List of project-management committee (PMC) members and committers on the Apache Arrow project.
arrow.apache.org
New blog post! kylebarron.dev/blog/fast-py... This dives into performance pitfalls of Python bindings, why projects like Lonboard are so fast, and why I care about Apache Arrow so much. The post is high level and you don't need to know C/C++/Rust to understand it!
Our SIGMOD paper with our friends at Tsinghua + @wesmckinney.com + @pateljm.bsky.social on creating a next generation open-source data file format is out. F3 is a future-proof file format avoids the mistakes of Parquet. ๐ Paper: db.cs.cmu.edu/papers/2025/... ๐ Code: github.com/future-file-...
Last week Apache Sedona announced SedonaDB...and now I finally get to write about it! Here I use SedonaDB to demonstrate the explore/iterate/visualize cycle...SedonaDB's CRS support + @kylebarron.dev's `lonboard` is ๐ for exploring new data!) dewey.dunnington.ca/post/2025/st...
Stream network traversal with SedonaDB | Dewey Dunnington
Last Wednesday the Apache Sedona project announced SedonaDB. Thereโs also a great post on the Whereobots blog that has a bit more context, or if youโre like me and you just want to see the code you ca...
dewey.dunnington.ca
New Lonboard release and new demo! Integrating marimo and Apache DataFusion to visualize the NYC taxi dataset. developmentseed.org/lonboard/lat...
Published a new version of parquet-wasm: github.com/kylebarron/p... - Update to latest version of Rust parquet crate - Workaround to read Parquet data containing Arrow string view/binary view types - Streaming writes - Comparison between parquet-wasm and hyparquet, a pure-JavaScript Parquet reader
Release v0.7.0 ยท kylebarron/parquet-wasm
What's Changed Streaming Writes implementation by @H-Plus-Time in #305 Expose schema on ParquetFile by @H-Plus-Time in #599 Small doc fixes by @severo in #762 Bump to arrow/parquet 56 by @kylebarr...
github.com
Published arro3-core v0.6 with wider dtype support for converting numpy ndarrays to Arrow. It now additionally supports: - datetime64 - timedelta64 - fixed-width strings/bytes - variable-width strings - object arrays of str/bytes And the Python wheel is still just 2.5MB! github.com/kylebarron/a...
Release py-v0.6.0 ยท kylebarron/arro3
arro3-core Breaking Changes ๐ง No breaking changes. New features โจ Expanded dtype support in Array.from_numpy. It now additionally supports datetime64, timedelta64, fixed-width strings and bytes, v...
github.com
New GeoArrow-Rust release (& Python bindings) with a dedicated FlatGeobuf reader and writer: - Fast bounding box queries, pushed down to the original file format - Sync/async data reading through obstore - Fully Rust with no GDAL means easy installation geoarrow.org/geoarrow-rs/...
FlatGeobuf - geoarrow-rust
Python bindings to Rust implementation of GeoArrow
geoarrow.org
New blog post on Obstore, fast, multi-provider cloud storage access for Python: developmentseed.org/blog/2025-08...
We Needed Better Cloud Storage for Python so We Built Obstore โ Development Seed
Obstore solves the friction we kept hitting in cloud-native workflows.
developmentseed.org
New example notebook on visualizing Spatially-Partitioned GeoParquet with Lonboard, Obstore, and GeoArrow-Rust, using Overture Maps Foundation data! developmentseed.org/lonboard/lat...
When the Delta Lake Python bindings take a required dependency on your library ๐ . 2.6M downloads a month! ๐ฑ Guess I'll never be making a breaking release now!! pypistats.org/packages/arr... arro3-core is 15x smaller in your environment than pyarrow! kylebarron.dev/arro3/latest/
not every decade-old tech post holds up, but this one does: macwright.com/2012/06/13/p...
Gravity Always Wins
On how software naturally degrades as time goes on, and maybe we should embrace that.
macwright.com