Node.JS web application for GPS tracking
 
 
 
 
Go to file
Keith Irwin e95db0eb2c
Merged hotfix-0.9.2 into develop
2018-08-15 23:34:29 +00:00
config Merged hotfix-0.9.2 into develop 2018-08-15 23:34:29 +00:00
res Changed permissions 2018-01-19 21:22:49 +00:00
static Fixed merge conflicts pulling hotfix-0.9.1 into develop 2018-08-14 19:27:59 +00:00
test Deactivated broken test 2018-03-08 19:56:34 +00:00
views Fixed merge conflicts pulling hotfix-0.9.1 into develop 2018-08-14 19:27:59 +00:00
.dockerignore Changed permissions 2018-01-19 21:22:49 +00:00
.gitignore Added minified files to git so minifiers can be removed from production 2018-03-09 00:40:38 +00:00
.travis.yml #123 Replaced minifier with less and uglify-es 2018-03-09 02:19:48 +00:00
CHANGELOG.md Patched slug CVE-2017-16117 by truncating input 2018-08-14 23:09:52 +00:00
LICENSE.md Changed permissions 2018-01-19 21:22:49 +00:00
README.md Merged hotfix-0.9.2 into develop 2018-08-15 23:34:29 +00:00
package-lock.json Merged hotfix-0.9.2 into develop 2018-08-15 23:34:29 +00:00
package.json Merged hotfix-0.9.2 into develop 2018-08-15 23:34:29 +00:00
server.js Merged hotfix-0.9.2 into develop 2018-08-15 23:34:29 +00:00

README.md

TTracman

v 0.9.0

node.js application to display a sharable map with user's location.

Travis Build Status Coverage Status JavaScript Style Guide

Installation

On unix-based systems:

git clone https://github.com/Tracman-org/Server.git tracman-server &&\
cd tracman-server &&\
npm install

You will need to set up a configuration file at config/env/env.js. Use config/env/sample.js for an example. You can get API keys at the google developer's console. You will need to set up approved hosts and auth callbacks. There is more information in their documentation.

A good method is to simply copy the sample configuration and point config/env/env.js to the new version:

cp config/env/sample.js config/env/local-config.js
echo "module.exports = require('./local-config.js')" > config/env/env.js

Then edit config/env/local-config.js to match your local environment.

Usage

Run Tracman with npm:

npm run build && npm start

...or with nodemon:

npm run nodemon

Nodemon will automatically rebuild and restart the app when you make changes.

Contributing

Tracman will be updated according to this branching model... more or less. If you know anything about programming Android, the Tracman android app is more desperate for help.

Changelog

view full changelog

v0.9.x
  • Removed coinhive
  • Fixed CSP rules
  • Improved debugging output
  • Tried to fix scrollwheel
  • Fixed security audited npm packages
  • #121 Fixed various security holes
  • #68 Added tests, mostly for authentication
  • #120 Split config/routes/settings.js into two files
  • Removed express validator and replaced with homegrown function
  • Fixed showing welcome message on every login
  • Removed naked domains
  • Patched CVE-2017-16117 on node-slug
v0.8.x
  • Hotfixed service worker bugs
  • Added check to ensure only the newest location is sent
  • Removed buggy login/-out redirects
  • #111 Implemented service worker
  • #116 Switched promises for async/await
  • #64 Started using promises in model methods
  • #63 Disconnect inactive clients
  • #110 Implemented StandardJS
  • Removed emojis
  • #113 #114 Switched to useMongoClient
  • #67 Fixed invisible marker in demo
  • Shortened if statements and long lines

v0.7.x

  • Fixed altitude sign
  • Added coinhive
  • Added HTML5 shiv
  • Added support for browser geolocation
  • Fixed streetview image bugs
  • Added sourcemaps for debugging
  • Fixed streetview bearing
  • #96 Replaced panorama with static images
  • #96 Continue to update panorama after creating element
  • #100 Moved CSS out of webpack
  • Fixed #108
  • Fixed bugs #105 and #107
  • #89 Can change marker color
  • Fixed #102 issue creating account

License

view full license

Tracman: GPS tracking service in node.js Copyright © 2018 Keith Irwin

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.