An awesome app to help track a Tarock game scores.
-
[.] Milesteone 1 - Local storage, correct scores, Player handling,UI improvements
- [.] refactor
- Tarock sheet: move handler's logic to data layer, if possible
- contract better calculation of the bid base score
- game, contract: simplify create and update methods with same parameter set
- refactor can silent, do not leak bids details to contract layer
- Add canSilent method to contract too.
- refactor ContractsTable to use the new can silent contracts.
- add license, contribution, proper readme
- increase test coverage
- also clear the base scores too when resetting the scores
- correct missing key prop in Players.tsx, and other warnings in console
- [.] refactor
-
Milestone 2, store in a permanent storage, share a game
- add validators and defaults to models
- implement error handling and showing to the user
- Set and save the mayor state
- Save the DateTime to the Game
- save the details of the previous games [ ] add random colors to player avatars
- do some authentication / login / firebase
- save the game to a DB e.g. Firebase
- deploy the app to heroku / netlify / vercel / Firebase
- share the game with others
- Sign which player is the mayor in player list, sign it in scores too.
-
Milestone 3, mobile friendly, UX improvements
-
add UI tests
-
refactor
- TarockSheet extract a Game component from the tarock sheet
- split contractSelector to smaller components
- split ContractsTable to smaller components
-
refactor
- better type checking for dynamic types in Contracts table
-
usability
- Add default players if empty
- Game Properties: show score near the game score selector radio buttons
- BidSelector: show the score near the bids
-
compact Contract Table
- collapse fields
- compact view
- row styling based on validInFinalScore
- Tarock sheet: better Win by taker UI component, e.g: a button
- show the declarers and opponents scores around the contract table
- ContractsTable: show the the contra names instead of the values
- ContractsTable: integrate bid variant into the bid column
- Variant selector: show icons near the variants
- Contracts Table: show variants icons'
-
responsive design check
-
-
Milestone 4, better game saving and history
- show each game scroes as a table (collapsable)
- save multiple nights
- edit the previous games scores
- add undo & redo (?)
- add hotkeys
-
Milestone 5
- customizing the bids, create general rules
- multilanguage
-
Done
- [.] Milestone 1
- [.] refactor
- rename the components and methods, create a consistent Model interface.
- create a better app icon and align the icon in the app bar
- add a better favicon
- add a better logo for manifest
- add confirmations to destroy / reset type of actions
- do not delete the contracts, if the previous party score type was party or contracts are already added
- show the contracts and the selector only if, the party is selected
- Indicate Game winner (Radli) on players
- ContractTable: when a contract silent, show visually that the contra does not take into account.
- ContractTable: if a contract is silent, it should not able to apply a contra on it,
- correct pheasants' score to 20
- save the games locally and clear logic
- generalize button colors and variants
- rename BidSelector to ContractSelector
- correct scores: king uhu 20, centrum 10, small bird 10, large bird 10
- save only the scores if they are available
- Better player and scores handling, create one component
- correct klopiczky and self calling calulation
- correct new contracts added as loose by taker instead of unknown
- add a party base score
- add title for the app, fill metadata in manifest.json + index.html
- switch off the silent and win, if the party is reset-ed
- save the scores only if the proper number of players selected
- when klopitzky game ticked, add klopiczky contract, remove others
- when party game ticked add party automatically
- refactor game handling: remove validation rules, and validInFinalScore props, use winByTaker null instead and make it manually
- handle multiple games, score sheet
- Faster bid adding
- group the bids
- disable the dialog when adding: add contracts default by taker, null variant, it can be changed in the contracts table
- make a global silent switch, it adds bids silently, and automatically win, except ulti
- ContractsTable: automatically won by the eight and nine tarock, klopiczky
- disable contra for eight, nine tarock
- [.] refactor
- MVP
- Add player handling
- Calculate score
- ContractsTable, actions
- TarockSheet: Add game properties
- Recalculate scores, when a party type changes
- Deploy to github pages, w github actions
- [.] Milestone 1