0.1.3 • Published 7 years ago

paatos-ui v0.1.3

Weekly downloads
74
License
-
Repository
-
Last release
7 years ago

Paatos-ui

Web user interface for paatos-api

Setup

These instructions assume that system is being installed on machine with Ubuntu 16.04 OS.

prerequisites

Install and configure Mysql / Mariadb server

sudo apt-get update
sudo apt-get install mariadb-server mariadb-client

Secure your newly installed database (optional but recommended)

sudo mysql_secure_installation

Create database and database user

sudo mysql -u root -p
create database paatosui default character set = utf8mb4 collate = utf8mb4_unicode_ci;
create user 'paatosuser'@'localhost' IDENTIFIED BY 'yourpassword';
grant all privileges on paatosui.* to paatosuser@localhost identified by 'yourpassword';

Install Elasticsearch

https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html

Install NodeJS

https://nodejs.org/en/download/package-manager/

Installation

Paatos-ui can be installed either using latest published version from NPM package manager or by cloning this repository.

Using NPM package manager

npm install paatos-ui

When using NPM your installation base will be node_modules/paatos-ui

Using git

clone the repository

git clone git@github.com:6aika/paatos-ui.git

install dependencies

cd paatos-ui
npm install

build client scripts and styles

npm install -g grunt
grunt

Configuration

Go to your installation base directory, either node_modules/paatos-ui or the repository base directory.

create file named config.json with following content

{
  "apis": {
    "espoo": {
      "name": "Espoo",
      "url": "https://paatos-espoo.6aika.fi/v1"      
    },
    "vantaa": {
      "name": "Vantaa",
      "url": "https://paatos-vantaa.6aika.fi/v1"      
    },
    "oulu": {
      "name": "Oulu",
      "url": "https://paatos-oulu.6aika.fi/v1"
    },
    "helsinki": {
      "name": "Helsinki",
      "url": "https://paatos-helsinki.6aika.fi/v1"      
    },
    "tampere": {
      "name": "Tampere",
      "url": "https://paatos-tampere.6aika.fi/v1"      
    }
  },
  "geocode": {
    "url": "http://open.mapquestapi.com/geocoding/v1/address",
    "key": "your-mapquest-api-key"
  },
  "session-secret": "yoursecret",
  "mysql": {
    "host": "localhost",
    "database": "paatosui",
    "username": "paatosuser",
    "password": "yourpassword",
    "port": 3306
  },
  "elasticsearch": {
      "index": "paatosui",
      "log": "debug",
      "hosts": [{ "host": "localhost", "port": 9200 }]
  },
  "tasks": {
    "concurrent": 4,
    "afterProcessDelay": 1000
  },
  "standalone": true
}

"apis": used to configure which paatos-api instances are used for searching the data.

"geocode": connection details to geocoding API.

"session-secret": random string here.

"mysql": database connection details.

"elasticsearch": elastisearch connection details.

"tasks": used to configure how many actions will be indexed simultaneously and how long the system will wait before starting the next indexing batch.

"standalone": run system in non-clustered mode

Running

Start the Paatos-ui by running command

node app.js --host localhost --port 8080