Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've heard some good things about Rails, but I don't know much about it yet. There are only a few questions about Rails on GIS.SE (and there's not even a Rails tag).

  1. Is it worthwhile to learn about Rails, from a GIS professional's perspective? (eg, what advantages does Rails give when building a website containing GIS functionality, compared to not using Rails?)

  2. Are there any examples of good GIS/mapping websites built on Rails?

(I don't have any specific requirements in mind yet - I just want to know whether to invest time in learning Rails.)

share|improve this question

closed as too broad by PolyGeo Oct 12 '15 at 23:41

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

10 Answers 10

up vote 15 down vote accepted
  1. Probably not.
  2. None stand out.

Your time would be much better spent learning Django/GeoDjango. Django is similar to Rails in that it's a web application framework. It uses Python rather than Ruby. The geospatial functionality is much more mature than GeoRuby.

Ruby/Rails is a great platform to develop on but the spatial functionality isn't on par with Django.

share|improve this answer

i am currently developping a rails app with some mapping capabilities, and i really love ruby and RoR, but sadly enough there is very little plugins mature enough for a complex WMS/WFS service.

But i just want to add that the recent rGeo library does quite a good job with projections (proj4 bindings and ability to use other APIs), integrates smoothly with the ActiveRecord ORM (i use it with postgre/postgis, works like a charm), and has some nice tools to read shapefiles, encode/decode GeoJSON...

share|improve this answer
Can you post a link to your site when it's ready? I'd love to see it. Thanks. – Stephen Lead Sep 14 '11 at 23:33
there is currently only one map, and the whole site is a mess because i'm "facelifting" it (and because im a huge noob :D), but you can peek a look here‌​ – m_x Sep 15 '11 at 9:14

Strictly from a learning perspective, learning something new is always worthwhile. However, Ruby/Ruby on Rails isn't extremely popular in the GIS world. Because of lack of popularity, I would suggest you pick up another language instead, such as Python, if your goal is to learn something new. I don't think you'll find any GIS-specific advantages to Ruby/Rails, but it does certainly have an appeal when it comes to building websites.

As for projects, there are Proj4 bindings for Ruby and GeoRuby

share|improve this answer

Two mapping websites built on ruby on rails I recommend:

  1. OpenStreetMap
  2. NYPL Map Rectifier
share|improve this answer

TLDR; The advantage of using ruby for GIS is ruby itself. Once you learn how to do CRS transformations with it, using rgeo is a breeze with squeel.

I've found working with the rgeo gem very pleasant. To the contrary of nearly every other answer for this question, I would say its definitely worth looking into if you are familiar with ruby. If you're not, I'd say there's probably not a particular advantage based off some of these other answers but ruby was great for running scripts for me while I loaded in gigabytes of shapefile data to run postgis queries on. On the database side its been an absolute pleasure.

The combination of rails's ActiveRecord bindings for postgis, in conjunction with rgeo and the squeel gem, its been just another relatively easy day in the park as far as a ruby application normally goes.

For THE introduction to working with GIS on rails, see this rubyconf talk by Daniel Azuma

Azuma works for google but also wrote the rgeo gem for ruby. rgeo has the extensions rgeo-shapefile & rgeo-geojson (these are the two I've used so far) that make it easy to plug into existing datasets. rgeo-shapefile can only read shapefiles as far as I can tell but rgeo-geojson can read and write.

Here's part 1 of an 11-part series blog post he's been writing for some time now. The series has been extremely useful to me.

share|improve this answer

I just learnt about CartoSet, which certainly looks interesting.

It is a new highly customizable geoportal solution based on open source technologies.... Anyone that needs to publish and curate a geospatial dataset in simple and beautiful ways. It uses Ruby On Rails, Refinery and PostGIS, a complete open-source framework, free to be used

share|improve this answer

I recommend using both. I started as a GIS developer but then started RoR development in projects with a Map component.

You may not have all the tools that Django has but with Postgres/PostGIS, GDAL and Leaflet or Openlayers you can do almost everything.

Cartodb is a really interesting tool bases in Ruby on Rails and Postgres. You can also check WCMC labs for GIS web projects built in Ruby on Rails.

share|improve this answer

looking at it is use ruby on rails.

share|improve this answer

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. – iant Jan 23 '13 at 8:46

As a rails developer who has had some experience of working with front-end GIS integrations using the Arcgis Javascript API and Google Maps, I find it assuring that I already have the usual needs of a website taken care of - and can focus on the javascript alone. If your needs are any similar, I believe either stack can serve the purpose.

share|improve this answer

So 3 years later I finally got organised enough to learn some Rails.

My initial conclusion is that Rails won't specifically help with a GIS web application - but it makes everything else so much easier.

Rails handles the most common tasks and functions of a web application, meaning that the developer can just concentrate on the GIS-specific aspects, without having to write all the "plumbing" between pages.

share|improve this answer
(another year later and I'm getting pretty competent with Rails. I really dig it now, though I still agree that it doesn't help with GIS specifically) – Stephen Lead Oct 13 '15 at 2:09

Not the answer you're looking for? Browse other questions tagged or ask your own question.