Components

App

Routes

HomePage (Options for singleplayer and multiplayer)

SingleplayerPage (Straight to game)

SingleWordle (Game points by number of turns players use, uses HTTP)

MultiplayerLobbyPage (Type name, create room or join existing room)

MultiplayerPage

SpeedWordle (To add in MS 3: Timer ends → next round)

States

AppContext

loggedIn(T/F)

userId

WordleContext

guesses (for all guesses and colour after submission of guess)

handlekeyup → current guess

enter if word in guessHist, checks if exists, checks if length is 5

formatguess → multiplayer sends to the server [{key: “a”, “green”}, {key: “b”, “yellow”}]

history (to check if guess is already used)

row

currentGuess

usedLetters

receivedColors (Use this when receiving colours from socket/server)

MultiplayerContext

channel

gameStart

roomId

playerId

playerName

players ([playerId, playerName, gameState])

round

Grid

Keyboard