♿️ Source code of Wheelmap.org
Switch branches/tags
v2.4.4 v2.4.2 v2.4.1 v2.4.0 v2.3.0 v2.2.2 v2.2.0 v2.1.0 v2.0.8 v2.0.6 v2.0.4 v2.0.2 v2.0.0 v1.8.0 staging_20141125093357 staging_20141111235241 staging_20141103112407 staging_20141025111605 staging_20141002214911 staging_20140920113422 staging_20140911211840 staging_20140911194802 staging_20140911193046 staging_20140911191152 staging_20140908194722 staging_20140908193118 staging_20140904124802 staging_20140902091105 staging_20140808125421 staging_20140808085854 staging_20140807101208 staging_20140806100313 staging_20140717135020 staging_20140704222146 staging_20140701133700 staging_20140617101349 staging_20140610092642 staging_20140610085759 staging_20140527135931 staging_20140527134157 staging_20140527133426 staging_20140527123418 staging_20140527114455 staging_20140527111638 staging_20140527103047 staging_20140527102352 staging_20140520133654 staging_20140520121216 staging_20140520110830 staging_20140520082556 staging_20140515120115 staging_20140515115028 staging_20140515103612 staging_20140513125840 staging_20140513122726 staging_20140509071437 staging_20140508162830 staging_20140507132514 staging_20140422101053 staging_20140415141044 staging_20140405135924 staging_20140403094937 staging_20140326142703 staging_20140318193707 staging_20140318181404 staging_20140312101932 staging_20140305163212 staging_20140305162614 staging_20140225132632 staging_20140225123929 staging_20140219095456 staging_20140219094802 staging_20140130101015 staging_20140128143343 staging_20140128133316 staging_20140128131918 staging_20140115124211 staging_20140115110722 staging_20140115110216 staging_20140111113723 staging_20140109184317 staging_20140109165257 staging_20140109163140 staging_20140109160844 staging_20140109112318 staging_20140108160003 staging_20140108154822 staging_20140108151707 staging_20140108150516 staging_20140108135613 staging_20140108133907 staging_20140108121553 staging_20140107144401 staging_20140107125929 staging_20140107122056 staging_20131219220837 staging_20131219160920 staging_20131219133923 staging_20131219104923 staging_20131218153137
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.capistrano
.tx
app
bin
config
db
doc Add todo lists. Aug 30, 2011
lib
public
script
spec Fix: Use https for nominatim in search controller test too May 15, 2018
test
vagrant
vendor/assets
.babelrc
.env.sample
.eslintignore
.eslintrc
.gems
.gitignore Ignore package-lock.json Aug 29, 2017
.rspec use documentation format for rspec tests Feb 15, 2016
.rubocop.yml
.ruby-version
.tm_properties
.travis.yml
Capfile
Gemfile
Gemfile.lock
Guardfile Output of rubocop -a Mar 1, 2017
LICENSE Add license. Sep 21, 2015
README.md
Rakefile
Vagrantfile
codeofconduct_en.md Fix empty code of conduct file Jun 14, 2016
config.ru
package.json Fix package versions to run eslint successfully again Aug 29, 2017

README.md

Wheelmap.org

Build Status Stories in Next

Wheelmap.org is an online map to search, find and mark wheelchair-accessible places. Get involved by marking public places like bars, restaurants, cinemas or supermarkets!

This Repository is the source code of the website Wheelmap.org.

Development Environment

A Vagrantfile is bundled for convenience. It is the easiest way to get started testing or developing wheelmap. It will set up the application entirely and configure it for use inside the box. Please note it imports data for Berlin only to say time.

To use this just navigate into the Wheelmap directory and run vagrant up. After it is completed you can enter the box with vagrant ssh. You'll find a current copy of the repository at /vagrant, cd into it then you can start the server with bundle exec rails server, visit it at localhost:3000.

If you use the vagrant box you do not need to worry about the rest of the setup below It is all done for you.

I. Installation

Requirements

  • Ruby 2.2.2
  • Bundler
  • MySQL 5.6 (< 5.7)
  • ImageMagick
  • PhantomJS
  • Node >= 4.1
  • npm

Before you start, please make sure you have Homebrew for Mac or aptitude for Ubuntu installed.

Install essential software packages:

MacOS

$ brew install git wget

Ubuntu

$ sudo apt-get update
$ sudo apt-get install -y git wget curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev libgeos-dev libproj-dev libgdal-dev

Install Ruby 2.2.2:

MacOS / Ubuntu

First, install the Ruby Package Manager of your choice:

Dependent on your choice, please install Ruby with either:

$ rbenv install 2.2.2
$ rbenv rehash
$ rbenv local 2.2.2

or:

$ rvm install 2.2.2
$ rvm use 2.2.2

Note: If you need more infos about how to install rbenv, rvm or Ruby, please take a look at our wiki page.

Install Bundler:

MacOS / Ubuntu

$ gem install bundler

Install MySQL:

MacOS

$ brew install mysql

Ubuntu

$ sudo apt-get update
$ sudo apt-get install -y libmysqlclient-dev mysql-server-5.6

Note: Please make sure to install a mysql-server version that is before v5.7 due to some geometry issues.

Install ImageMagick:

MacOS

$ brew install imagemagick

Ubuntu

$ sudo apt-get install -y imagemagick

Install PhantomJS:

PhantomJS is a testing framework for headless testing.

MacOS

$ brew install phantomjs   # via Homebrew

or:
$ port install phantomjs   # via MacPorts

Ubuntu

$ sudo npm install -g phantomjs-prebuilt

Clone the app from Github:

$ git clone https://github.com/sozialhelden/wheelmap.git --depth 1
$ cd wheelmap
$ bundle install --path vendor/bundle

II. Getting started

Copy the example secrets.yml:
$ cp config/secrets.sample.yml config/secrets.yml
Copy the example openstreetmap config:
$ cp config/open_street_map.SAMPLE.yml config/open_street_map.yml
Copy the example environment variable config file:
$ cp .env.sample .env
Copy the example database config and edit accordingly:
$ cp config/database.SAMPLE.yml config/database.yml
Edit database.yml to reflect your current database settings.
Now lets create the actual database and prepare minimal data:
$ bundle exec rake db:create:all
Then log into the mysql server and pipe the structure.sql file into the database you want to use, for example:
$ mysql -u root wheelmap_development < db/structure.sql
Run the rake task to seed data:
$ bundle exec rake db:seed
And get some POI data into the database:
$ wget http://download.geofabrik.de/europe/germany/berlin-latest.osm.bz2
$ bzcat berlin-latest.osm.bz2 | bundle exec rake osm:import
Install all JavaScript dependencies:

MacOS

$ brew install node
$ npm install -g npm
$ npm install

Ubuntu

$ sudo apt-get install -y nodejs
$ sudo apt-get install -y npm
$ sudo npm install -g npm
Finally startup a local rails server
$ bundle exec rails server

And visit the website in your browser: http://0.0.0.0:3000

III. Documentation

Please also check our wiki, if you need more informations to specific topics and can't find them here, e.g. how to generate a sprite or how to test our app.

IV. Code of Conduct

We refer to the Berlin Code of Conduct and friendly ask all contributors and people involved to comply with it.

V. License

The Wheelmap Software is released under the GNU Affero General Public License v3.0.