geocms

GeoCMS is a complete open source solution for consuming and visualizing geospatial data

25
8
Ruby

What is GeoCMS ?

GeoCMS is a complete open source solution that allows for the vizualisation of geospatial data on the web built with Ruby on Rails, AngularJS and LeafletJS.
It was built to make it easier for people to consume geospatial data from multiple data sources that are OGC-compliant like GeoServer, MapServer …

GeoCMS actually consists of several different gems, each of which are maintained in a single repository. By requiring the GeoCMS gem you automatically require all of the necessary gem dependencies which are:

  • geocms_api (RESTful API)
  • geocms_frontend (User-facing components)
  • geocms_backend (Admin area)
  • geocms_core (Models & Mailers, the basic components of geocms that it can’t run without)

All of the gems are designed to work together to provide a vizualisation platform. It is also possible, however, to use only the pieces you are interested in. For example, you could use just the barebones geocms_core gem and build your own user facing interface on top of it.

You can see real-world applications built with GeoCMS at indigeo.fr, check it out !

screenshot 2015-03-30 16 41 46

Features

With GeoCMS, you can define multiple data sources and pick the data you want to manipulate in your maps.
You can then create maps using these data, combining them and using the multiple tools to manipulate them like opacity or timeline.

Once you are done editing your map, you can save it to retrieve it later and share it with the world with a direct link or embedded in any site !

screenshot 2015-03-30 16 51 22

screenshot 2015-03-30 16 46 06

Installation guide

Dependencies

In order for GeoCMS to work properly, you will need the following installed :

  • Ruby 2.1.0 and greater
  • Rails 4.1 and greater
  • PostgreSQL 9.1 and greater
  • Redis-server
  • NodeJS
  • ImageMagick

Guide

The installation process should be straightforward once you make sure that all dependecies are installed.

  • Create a new Rails application :
$ gem install rails -v 4.2.3
$ rails new myapp -d postgresql
  • Install GeoCMS in your app :

To use a stable build of GeoCMS, you can manually add GeoCMS to your
Rails application. To use the 2-4-stable branch of GeoCMS, add this line to
your Gemfile.

gem 'geocms', github: 'dotgee/geocms', branch: '2-0-stable'

Alternatively, if you want to use the bleeding edge version of GeoCMS, use this
line:

gem 'geocms', github: 'dotgee/geocms'
  • Install GeoCMS migrations and data :
$ bundle exec rake railties:install:migrations
$ bundle exec rake db:migrate
$ bundle exec rake db:seed
  • Mount GeoCMS in your application (in config/routes.rb) :
# config/routes.rb
Rails.application.routes.draw do
  mount Geocms::Core::Engine, :at => "/"
end

This is it ! You can run your application and everything should “just work” ™
If you run into issues, you should make sure you do have a Geocms::Account in your database, defined with “default: true”.

Roadmap

  • Support vector layers (GeoJSON)
  • Responsive layout
  • CQL Filters
  • Normalized plugin structure

Authors

Contributing

GeoCMS is an open source project and we encourage contributions.

In the spirit of free software, everyone is encouraged to help improve this project.

Here are some ways you can contribute:

Licence

GeoCMS is releasedd under the GNU GENERAL PUBLIC LICENSE. See the LICENSE.md file.