Skip to content

matsl/racing-management-system

 
 

Repository files navigation

CAG Racing Management System

The ultimate racing management system 😜.

Specification

See Wiki.

Mongo DB

Install MongoDB: https://docs.mongodb.org/manual/installation/

MongoDB GUI, 3T MongoChef: http://3t.io/mongochef/download/

Start mongod:

$ mongod --dbpath <path to DB>

Run back-end services with Docker

You can use the maven profile docker to generate docker containers for each server application.

mvn clean install -Pdocker

The easiest way to run the docker containers is to start them with docker-compose, simply run

docker-compose up

The client-api will then be available at localhost:10580 and the swagger documentation at localhost:10580/swagger-ui.html.

See also Ports.

To remove unused images run the following:

docker rmi $(docker images | grep "^<none>" | awk '{print $3}')

Tools

Build from root pom.xml:

Without integration-tests (doesn't require mongod installed locally):

mvn package

With integration-tests (requires local mongod running on port 27017):

mvn install

To clean all generated files from node.js in the client, use the profile clean-node:

mvn -Pclean-node clean

Submodules

  • cag-rms-client-webpack: The Angular 1.x based web client for the application
  • client-api: The REST-API facade towards other back-end services used by the cag-rms-client
  • race-administrator: The service handling user queueing and orchestration of races
  • current-race: The service handling and supervising the currently ongoing race and receiving detector passage events
  • leaderboard: The service keeping track of all results
  • user-manager: The service keeping track of registered users and active sessions
  • current-race: 10080
  • leaderboard: 10180
  • user-manager: 10280
  • race-administrator: 10380
  • client-api: 10580

Time measurement

Foto resistor spec: https://tkkrlab.nl/wiki/Arduino_KY-018_Photo_resistor_module

About

The ultimate race management system

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 42.8%
  • JavaScript 23.8%
  • TypeScript 13.7%
  • HTML 13.0%
  • CSS 6.5%
  • Gherkin 0.2%