FirstLegoLeague / launcher

A launcher program to install and launch all the micro-services of the system
GNU General Public License v3.0
9 stars 15 forks source link

Build status David Dependency Status David Dev Dependency Status

FIRST LEGO League TMS Launcher

This is the "FIRST LEGO League - Tournament Management System" Launcher. This project connect all the tournament management system components to create a single user-friendly application.

Using

You can find the installation file of the launcher at the FIRST LEGO League software page here.

Contributing

To contribute to this repository, please make a fork, make your changes and submit a pull request.

This way of work allows us to maintain proper code quality, which is important when working with a large amount of people on the same project. Feel free to join the discussion on the issues page.

The best way to work on a feature or a bug is to follow these steps:

In your own fork, you can create any branch structure you like, however, some best practices / tips are:

Updates

Module updates

To update a module versions in the launcher, make a change in ./dev-scripts/config-get.js. Some modules are fetched from the npm, the Javascript Package Manager, while others are taken directly from github.

Module npm / github
identity-provider github
display npm
tournament npm
scoring npm
rankings github
clock github

Launcher version update

TBD

Development

Prerequisites

For windows platform:

Development Installation

Run Program Locally

The simple way run:

yarn start

The advanced way (usually if you want to config debug in your ide) run:

node ./node_modules/.bin/electron app/main.js

Debugging Node Modules

While running the launcher in development mode, each of the node modules is given a port for debug with the port 1#### where #### is the main port of the module itself. To use connect use your node debugger (For more information: node-debugging)

Building

To run the build, use the following script:

yarn build:dir --${platform}

where $platform$ must be replaced with either win or linux depend on your environment. You would be able to find the directory with the compiled application's files ./dist/${platform}-upacked. This directory contains the the application files only without the modules (and internals modules). Use the right packaging to create an installation file.

NOTE: the build script is not cross-compile script, so you should run the script on your desired platform.

Official platforms: