FIWARE Tour Guide Application. See
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

FIWARE Tour Guide Application

License Documentation badge Docker badge Support badge Build Status

Table of Contents


FIWARE Tour Guide App is a on-going node.js sample application used in the FIWARE Tour Guide to show real code working with the Generic Enablers integrated.

This application is a smart, context-aware application which allows to manage large Restaurant chains which are operating worldwide. Is intended to both franchise managers and to customers. To this aim, the main functionalities provided by the application are:

  • Admit Customer reservations
  • Register customer reviews
  • Real-time control of different parameters at each restaurant location (temperature and humidity)
  • Restaurant geo-location
  • Short time historic data of the different parameters monitored
  • Publication of open data concerning the most relevant information about the different restaurant locations, grouped by different properties


Architecture diagram

It includes (for the moment) the following components:

How to build and install

This project integrates a set of Generic Enablers using those enablers inside docker containers. It also comes with restaurants, reviews and reservations loaded to start working out of the box, as well as users and organizations to play with it.

For that purpose, docker and docker-compose are required.

Compose Diagram

Installation and Administration Guide

Detailed information of how to start this environment can be found here.

Deploying on a Cloud Fiware Lab Instance

You can deploy an instance of the Fiware TourGuide App in a cloud instance using Docker-machine. Detailed information of this process can be found in the following documentation:

User and Programmers Manual

The complete user guide of this environment is available at Readthedocs.

Miscellaneous configuration

How to configure a Context Provider in Orion

Here you can find a simple example of how to configure a Context Provider using Orion.

How to configure Cygnus in TourGuide

As Cygnus can publish in several third-party storages, here we explain where you should add your credentials for each source to publish the TourGuide data.

How to generate a new restaurant data image

The image provided is based on Euskadi Open Data information. The image is already loaded, but we provide information on how to generate it yourself.

How to run Feeders for the data image generation

Find out how to load information into a new image using the Tourguide feeders.

How to retrieve an Oauth Token to use the API

Every TourGuide API request must be authenticated. For that purpose, we provide a simple script to generate an Oauth Token based on a username and password of the preloaded data.

API Overview

The application provides a RESTful API with different routes and functions that covers the functionalities described above:

End to End tests

To run the end to end tests, you will need to first download the repository, then browse to server folder and run:

$ npm install
$ grunt

Grunt will run jshint and jscs linters as well as start a full TourGuide environment and run the End to End jasmine-node tests.


Try and tweak the Tour Guide application and if you have any feedback please contact us at using the tag 'tour-guide'.