blob: 98662c453d4960084c81f2c0dc889263add81189 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# Match Up
Match Up! is a web application to create pairings of players from a pool and assign to a limited number of slots. It is [live](https://mu.karanj.com)!
Here it is in action:

Some features of this application are:
- Activate and deactivate named players, guests and courts
- Propose pairings to each court from a set of players
- Considers player levels (optionally mingle players)
- Prioritize players that haven't played as many games
- Timer to limit the time for each round
What this application ***IS***:
- Open: The source code is available for modifications and extension
- Private: All player data is stored in your browser via local storage
What this application ***IS NOT***:
- Secure: The data is available for anyone to observe via the browser console
- Performant: Works with a small number of named players (<3 MB)
## Usage
- Select or deselect the courts available
- Check in and check out the regular players
- Optionally add guests to the game
- Beginner: Level 1
- Novice: Level 3
- Intermediate: Level 6
- Choose how the pools should be created
- All levels (Disregard levels)
- 2 Levels (Players split into two categories)
- 3 Levels (Players split into three categories)
- Skill based (Consider all levels)
- Request a proposal and confirm to start a round
- Repeat as many times as needed
- Reset the session at the bottom of the page
- You can update the list of players by providing a CSV file. The format is show below:
|id|first_name|last_name|level|
|---|---|---|---|
|104|John|Doe|4|
|104|Jane|Doe|9|
Levels are defined between 1 to 10.
## Compilation
Please install [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) and [node](https://nodejs.org/en) on your machine before proceeding further.
Once installed, open the terminal to a folder of your choosing and run the following commands to setup the application.
```bash
git clone https://gitlab.com/KaranJayachandra/match_up.git
cd match_up
npm install
```
To run a development server run `npm run dev` or run `npm run build` to create a optimized bundle of static content. I choose to serve this content via GitLab pages but you could choose to do so in any other server.
|