Visualizing GPS tracks with RikiTraki

Ricardo Morin

FOSS4G NA 2016 Presentation Proposal

WORK IN PROGRESS DRAFT

January 7, 2016

What is RikiTraki?

(DEMO)

Built with great Free and Open Source components

Client

Web Services

Database

Mapping

Web Frameworks

... plus these awesome open source projects

The time savings are simply amazing!

Leaflet.Elevation Visualizing elevation profiles
Leaflet-omnivore Parsing GPX files
Leaflet.markercluster Visualizing marker groups
Lightbox2 Displaying slide shows
exif-js Reading exif data
passport Authentication for nodejs
bcryptjs Password hashing
jsonwebtoken JWS token handling
is-my-json-valid JSON schema validation

... and using only free data and services

Thunderforest

Total cost thus far: $0

Client architecture

Single Page

Mapper

Forms

Config

Data

Utils

REST

Web Services architecture

Web Service

Routes

Tracks

Users

Schemas

Utils

DB Connection, Authentication

Static

Resources

REST

API

DATA

Access

Key technology decisions

  • Architecture options
  • Web mapping libraries
  • Lightweight vs full frameworks
  • Choice of languages
  • SQL vs NoSQL
  • BLOB storage
  • Drivers vs ODM
  • Security
  • Scaling

Challenges & lessons learned

  • Developing incrementally
  • Ensuring consistent look and feel across mapping libraries
  • Maintaining multi-browser compatibility, especially mobile
  • Dealing with stale libraries/projects
  • Keeping an eye on performance and scalability

Selected code examples

What's next?

  • User requests
  • vDrone visualization
  • Draw tracks
  • Drag and drop geotagging
  • Reverse geocode region tags
  • Performance

Resources

Client code repository https://github.com/jimmyangel/rikitraki
Server code repository https://github.com/jimmyangel/rikitrakiws
Blog http://blog.rikitraki.com
Cesium demos page http://cesiumjs.org/demos/RikiTraki.html

Contributions welcome!

FOSS4G NA 2016

By jimmyangel