Volodymyr Agafonkin's projects
A list of open source projects I created, maintain or actively contribute to.
Project | Role | Description |
---|---|---|
Leaflet | author | The number one JavaScript library for interactive maps. |
mapbox-gl-js | core contributor | JavaScript/WebGL vector maps library. |
mapbox-gl-native | core contributor | OpenGL-based vector maps library. |
Algorithms | ||
earcut | author | The fastest and smallest JS polygon triangulation library. |
earcut.hpp | core contributor | C++11 port of Earcut. |
rbush | author | Very fast JS R-tree-based 2D spatial index. |
rbush-knn | author | K-nearest neighbors search plugin for RBush. |
flatbush | author | Fast static spatial index for 2D rectangles and points. |
geoflatbush | author | Geographic kNN queries for Flatbush. |
kdbush | author | The fastest 2D static spatial index in JavaScript. |
kdbush.hpp | author | C++11 port of KDBush. |
geokdbush | author | Geographic extension to kdbush for fast kNN queries of locations on Earth. |
delaunator | author | The fastest JS Delaunay triangulation library for 2D points. |
delaunator-rs | author | A port of Delaunator to Rust. |
d3-delaunay | core contributor | Fast Voronoi diagram library for 2D points (based on Delaunator). |
robust-predicates | author | Fast robust geometric predicates for computational geometry (modern JS port of J. Shewchuk's predicates). |
supercluster | author | Fast geospatial point clustering library. |
supercluster.hpp | author | C++14 port of Supercluster. |
pixelmatch | author | The fastest and smallest pixel-level image comparison library. |
cheap-ruler | author | Collection of fast approximations for common geographic measurements. |
polylabel | author | JavaScript library for finding pole of inaccessibility of a polygon (for labeling). |
potpack | author | A tiny and fast JavaScript rectangle packing library (for sprite layouts). |
concaveman | author | The fastest concave hull algorithm in JS. |
dobbyscan | author | Fast density-based clustering of geographic points. |
delatin | author | A fast JavaScript 3D terrain mesh generation tool. |
MARTINI | author | A JavaScript library for real-time 3D terrain mesh generation. |
icomesh | author | Fast JavaScript icosphere mesh generation library for WebGL visualizations. |
linematch | author | An ultra-fast algorithm for comparing sets of polylines (e.g. road networks). |
lineclip | author | Fast library for clipping polylines and polygons by a bbox. |
simplify-js | author | Fast JS polyline simplification library. |
tinyqueue | author | Small and simple JS priority queue. |
flatqueue | author | A faster variation of a JS priority queue. |
tile-cover | core contributor | Generates the minimum set of tiles that cover a geometry. |
which-polygon | author | Fast index for matching points against a set of polygons (e.g. point in country queries). |
quickselect | author | Fast selection algorithm in JavaScript (Floyd-Rivest). |
simple-statistics | core contributor | JavaScript implementation of descriptive, regression, and inference statistics. |
tiny-sdf | author | JS library for browser-side signed distance field generation from text. |
Data | ||
geojson-vt | author | Very fast tile-based geospatial index for GeoJSON data. |
geojson-vt-cpp | core contributor | C++11 port of GeoJSON-VT. |
pbf | maintainer | Low-level, lightweight protocol buffers encoder/decoder for JS. |
geobuf | maintainer | Compact binary encoding for geospatial data. |
tile-reduce | Core contributor | scalable vector tile geospatial analysis library for Node. |
geojson.hpp | author | C++14 library for converting GeoJSON into geometry.hpp representation. |
tile-decorator | author | JS tool for optimizing vector tiles. |
mbtiles-extracts | author | Tool for extracting regional subsets of MBTiles files. |
Misc | ||
webgl-wind | author | Fully GPU-powered wind simulation using WebGL. |
suncalc | author | Tiny JavaScript library for calculating sun/moon positions and phases. |
tinyjam | author | A radically simple, zero-configuration static site generator. |
yeahjs | author | A tiny, fast, modern EJS templating library. |
flamebearer | author | Blazing fast flame graphs for Node & V8. |
simpleheat | author | Tiny JavaScript library for drawing heatmaps with Canvas. |
dead-simple-grid | author | 250-byte CSS grid framework. |
bullshit.js | author | Bookmarklet to expose bullshit on web pages. |
Leaflet.heat | author | Simple, fast heatmap plugin for Leaflet. |
Leaflet.TouchHover | author | Leaflet plugin for Leaflet hover interactions on mobile. |
github-org-browser | author | Simple tool for browsing public repos of a GitHub organization. |
binary-split | maintainer | Fast splitting Node stream. |
cumulative-timer | author | Simple cumulative timer for benchmarking JavaScript. |
magic-string | core contributor | Tool for generating source maps. |
road-orientation-map | author | A visualization of road orientations on an interactive map. |
rollup-plugin-unassert | maintainer | A Rollup plugin to remove assertion calls via Unassert. |
Experiments | ||
polysnap | author | Snap rounding a polygon with self-intersections (a work in progress). |
bbtrees | author | Self-balancing binary search tree implementations in JS (unfinished). |
polyclip | author | Martin polygon boolean operations in jS (unfinished). |
hain | author | port of Hain's polygon trapezoidation in JS (unfinished). |
seidel | author | Seidel's polygon triangulation in JS (deprecated). |
pbf-split | author | Splits a Node stream of length-prefixed protocol buffer messages (deprecated). |
fanny | author | Experiments with feedforward neural networks in JS. |
suncalc-go | author | Go port of SunCalc (unfinished). |