Node.JS web application for GPS tracking
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Keith Irwin bcef51587f
Update README.md
2 years ago
config Merged hotfix-0.9.2 into develop 4 years ago
res Changed permissions 5 years ago
static Fixed merge conflicts pulling hotfix-0.9.1 into develop 4 years ago
test Deactivated broken test 5 years ago
views Fixed merge conflicts pulling hotfix-0.9.1 into develop 4 years ago
.dockerignore Added dockerignore 5 years ago
.gitignore Merge accidental commits to master back into develop 4 years ago
.travis.yml #123 Replaced minifier with less and uglify-es 5 years ago
CHANGELOG.md Patched slug CVE-2017-16117 by truncating input 4 years ago
Dockerfile Fixed docker file to use copy instead of git clone 4 years ago
LICENSE.md Updated license 6 years ago
README.md Update README.md 2 years ago
package-lock.json npm update and audit 4 years ago
package.json npm update and audit 4 years ago
server.js Merged hotfix-0.9.2 into develop 4 years ago

README.md

TTracman

v 0.9.0

This project is deprecated. Since Google increased the cost of their maps API, it no longer made financial sense to keep it running. I might revive or remix the project in the future.

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/.