Releases: prisca-c/mind-reader
Releases · prisca-c/mind-reader
0.5.0
[0.5.0] - 2024-09-06
Added
- When guesser reached 5 words, game ends
- When game end, session is saved in database and deleted from cache (redis)
- Add
GameRulesclass to handle game logic fromGameUseCaseclass - Add tests for :
GameRulesclass (unit tests)Matchmaking - SearchController (functional tests)Matchmaking - AcceptController (functional tests)MatchPlayerJobclass job (unit tests)
- Add CI Pipeline
.github/workflows/checks.ymlto check code quality and run tests - Add an elo system to handle player ranking.
- Word stats are updated in database when game ends
- Word's form is now a single component
word_form.tsxwhich handle error correctly using i18n, hooks, and WordValidationStateEnum - Game takes 1min30s to end if no one found the word , added many things to handle this :
GameSessionnow have a status which takes aSessionStateto handle the game state {MATCHMAKING, READY, PLAYING}- Create
PlayerSessionwhich handlePlayer&{accepted: boolean, ready: boolean}, ready is used to know if the player is ready to play - Create
GameReadyController+ route to handle player ready state, start the game and use a setTimeout to end the game if no one found the word - In frontend, added a useTimer hook to handle the timer and display it
- Add in game Infos :
- Show opponent's infos at the end of the game
- Show word at the end of the game
- Show current turn info
- Add a Profile page to show game's history
- Add a player card to show player's infos
Changed
- Add
Cacheservice and update all Redis calls to use it - Add
EventStreamservice and update all Transmit calls to use it - Change project architecture
- Update
GameRules.validWordmethod by addingValidWordStateto have more precise return value - Switch from
TailwindtoUnoCSS
Fixed
- Fix issue from transmit listener not closing properly when unmounting a component
- Guesser now got the word when he found it or not
0.4.0
[0.4.0] - 2024-05-18
Added
- Add Transmit to handle Server-Side Events.
- Setup general chat room.
- Add Api service to handle api requests.
- Add Scheduler service to handle scheduled tasks :
- Matchmaking
- Add Matchmaking service to handle matchmaking.
- Add Game Controller to handle game logic.
- Add Client page to handle view of the game.
0.3.0
[0.3.0] - 2024-05-07
Added
- Add
TailwindCSSto the project. - Setup
Redisto handle session storage. - Add
docker-compose.yamlto the project to handle PostgreSQL and Redis in development environment. - Setup
OAuth2authentication's controller and routes (Twitch for now). - Add i18n handling on frontend with
react-i18next. - Setup default layout to pages.