No description, website, or topics provided.
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci
adapters
assets
db
handlers
migrations
routes
schemas
seeds
special
test
testData
.eslintignore
.eslintrc
.gitignore
.nvmrc
ARCHITECTURE.md
CHANGELOG.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Dockerfile
LICENSE
README.md
apidoc.json
build.js
config.js
connection.js
download.png
index.js
knexfile.js
maprules.apidocs.md
maprules.docs.js
maprules.spec.md
maprules.validation.scenarios.md
nodemon.json
package.json
process.yml

README.md

MapRules

Custom mapping presets and validation rules

About

MapRules is an api service that allows mappers and mapping campaign managers to define custom mapping presets and validation rules usable in OpenStreetMap Editors.

The goal of MapRules is to simplify OpenStreetMap feature tagging and validation.

Documentation

Contributing

Links to other MapRules Repos

...see the Architecture for a technical description of the repos work together

Getting Started

Install Dependencies

Install sqlite

ubuntu!

sudo apt-get update
sudo apt-get install -yq sqlite3 libsqlite-dev

centos!

sudo yum update
sudo yum install -yq

mac!

brew install sqlite3

windows!

...use this for guidance!

use node 10.x

# with nvm installed and from root of MapRules directory...
nvm install #only run first time if you don't have the right version
nvm use

...see here for setting up nvm on a linux machine ...see here for setting up nvm on a windows machine

install node dependencies
yarn install -G sqlite3 && yarn install

Development

build docs & ui

yarn build

Migrate the db and seed it with fixture data

NODE_ENV=development yarn fixture

Spin up the server

yarn dev

Test

yarn test:fixture # tests need db w/data...

test with docker image

docker build -f Dockerfile . && docker run maprules /bin/bash -c 'npm run test:fixture'

configure for production

Edit the process.yml with desired hosts & ports...