A simple Web application that renders your GPS traces using OpenStreetMaps
Find a file
Fabio Manganiello d49f8ec013
Fixed preRequestHandler route setup.
The map is a static object defined on the root `Route` class.

This means that any changes made by its derived classes (e.g. by
specifying the `@authenticate` annotation on some methods) will impact
the object for all the other derived classes too.

To prevent clashes, the structure of the map has been changed from:

```
method -> preRequestHandler
```

to:

```
RouteClass.name -> method -> preRequestHandler
```
2025-03-23 23:44:20 +01:00
.drone apk add make to the Docker image used for the build. 2025-02-28 01:45:39 +01:00
frontend Added dynamic SVG map marker. 2025-03-23 23:43:39 +01:00
src Fixed preRequestHandler route setup. 2025-03-23 23:44:20 +01:00
.drone.yml [CI/CD] Added build step. 2025-02-28 01:39:02 +01:00
.env.example Support description for location points. 2025-03-23 20:23:26 +01:00
.gitignore Added Docker support. 2025-03-07 00:19:45 +01:00
docker-compose.yml Added Docker support. 2025-03-07 00:19:45 +01:00
Dockerfile [Dockerfile] Cleanup dev dependencies after build 2025-03-07 22:48:28 +01:00
LICENSE Added LICENSE 2025-02-28 00:17:37 +01:00
Makefile Added separate Makefile for frontend 2025-02-28 02:26:55 +01:00
package-lock.json Moved db and migrations management to umzug. 2025-03-07 22:07:59 +01:00
package.json Moved db and migrations management to umzug. 2025-03-07 22:07:59 +01:00
README.md Added Docker support. 2025-03-07 00:19:45 +01:00
tsconfig.json Added dynamic SVG map marker. 2025-03-23 23:43:39 +01:00

GPSTracker

Build Status

Track your GPS data, from any data source

GPSTracker is a simple Webapp that consists of:

  • A backend that:
    • Can read GPS data from any compatible data source (supported: postgres, mysql, mariadb, mongodb, sqlite, snowflake), with arbitrary complex filtering, and expose them over a simple Web API.
    • [[TODO]] Can ingest GPS data points from HTTP, MQTT, Websocket or Kafka.
  • A frontend to display GPS data points and provides advanced filtering.

Screenshot of GPSTracker

Configuration

cp .env.example .env

See the provided .env.example for a reference.

Docker installation

docker compose up

Local installation

Build

Requirements:

  • node
  • typescript
  • make
make

Or, if you want to build the backend and the frontend separately:

# Backend
make backend

# Frontend
make frontend

Run

npm run start

Development

Compile and Hot-Reload for Development

Backend

npm run dev

Frontend

cd frontend
npm run dev