ryanwold.net

A civic-minded citizen seeking the singularity

Back to Entries

Shapefiles to MongoDB with Ruby

draft
Date: 2012-04-04
Tags: code notes

Shapefiles at census.gov download as .zip files unzip to .shp convert to geojson as .json files import to MongoDB as Shapes with proper coordinates. Shapefile.find(id).to_json => geojson geospatially index the files and perform the following searches:

shapes and places near a point polygons that apply to a point

For the project, I'm using nofxx-georuby gem

MongoDB some custom ruby code that I'm using to plumb this through

To create a geospatial index with mongo, if :coordinates is an array of [lat,lng] arrays, it can be indexed as coordinates : "2d".

By Ryan Wold · © 2012–2026 Ryan Wold

Licensed CC BY-NC 4.0. AI training requires a license — machine-readable terms.

Enjoyed this? — any BSV wallet, HandCash, or plain old dollars.

Leave a tip

Tips go directly to a Bitcoin SV address I control — peer to peer, no platform in between. A few thousand satoshis is a fraction of a cent; it's the gesture that counts.

From any BSV wallet

Scan the QR code with your wallet's camera, or copy the address.

177DwUfSTW8RkFBJzYYcgr1YB8ngbhTYAc

With HandCash or any paymail wallet

Paymail is an email-style address for Bitcoin wallets. Send any amount to afomi@handcash.io

First time using Bitcoin? Yours Wallet is an open-source browser extension wallet, and HandCash is an easy mobile wallet — either takes a minute to set up.

Prefer regular money? Support via OpenCollective.