Skip to content

akaegi/fselo

Repository files navigation

Base functionality

Commands (on Scoreboard aggregate)

open scoreboard boardId boardType requires boardId to be alphanumeric of the form [0-9a-zA-Z][0-9a-zA-Z-_]{2,} requires board to not yet exist requires boardType to be 'tt' => ScoreboardOpened

close scoreboard boardId requires board to be open => ScoreboardClosed

[given board] register player playerName requires playerName to be unique in board requires playerName to have length >= 3 chars => PlayerRegistered (with playerId)

[given board] enter score player1 player2 result [date] requires board to be open requires player1 and player2 to be registered already [tt] requires (isTableTennisScore result) [tt] requires no score between player1 and player2 within the last hour* (unless flags.allowDuplicateEntry) [tt] score must be of the form n:m where n > 0, m > 0 => ScoreEntered (with scoreId) * should prevent most unintentional "duplicate" score entries

[given board] withdraw score boardId scoreId => ScoreWithdrawn

[given board] fix score boardId scoreId result date requires board to be open => ScoreFixed

Queries

tt-elo boardId aliases: tt-board, tt-leaderboard, tt-scoreboard requires board to exist requires board to be of type 'tt'

----------------------------------------------------
| Rk | Player               | Elo  | +/- last week | 
----------------------------------------------------
|  1 | christoph.heiniger   |   80 |             0 |
|  2 | matthias.heinzmann   |   37 |            +2 |
|  3 | leonard.authier      |   38 |             0 |
|  4 | akaegi               |   37 |            +1 |
----------------------------------------------------

forecast boardId player1 player2 TODO

scores boardId player [otherPlayer] * ordered by score date descending * if otherPlayer given, filter scores against otherPlayer only

----------------------------------------------------
| Scores for `player`                              |
----------------------------------------------------
| Date              | Other player         | Score |
----------------------------------------------------
| 2019-10-22 10:12  | leonard.authier      | 1:2   |
----------------------------------------------------

statistic boardId player ???

User Frontend

https://xtermjs.org/

Extension Ideas

  • renamePlayer boardId oldName newName

Releases

No releases published

Packages

No packages published