| Hi HN I’ve been building libgd-gis, a pure-Ruby GIS rendering engine on top of the GD graphics library. The goal is simple: generate maps, tiles, and geospatial visualizations directly from Ruby — without external services, native GIS stacks, or heavyweight dependencies. What it does
• Render GeoJSON layers to PNG
• Draw markers, paths, polygons, labels
• Generate map tiles server-side
• Support animated GIF output
• YAML-based styling system
• No browser or JS required Why I built it
Ruby has strong web tooling but very limited options for high-performance image generation and GIS rendering. Existing tools are often slow, unmaintained, or depend on external processes. This project aims to provide: deterministic server-side rendering lightweight deployment full control over output suitability for APIs, reports, or offline generation Example use cases
• Static map generation for APIs
• Logistics / tracking dashboards
• Reports and PDFs
• IoT / telemetry visualization
• Educational tools
• Lightweight tile servers Tech stack
Ruby C extension bindings to libgd (via ruby-libgd) GeoJSON ingestion Coordinate projection handling Raster rendering pipeline Links
GitHub: https://github.com/ggerman/libgd-gis
RubyGems: https://rubygems.org/gems/libgd-gis |