Ideas to speed up my app (Scrabble)? Workflow performance feel slow

There are a few high frequency actions in the game that just feel super clunky:

  1. Drawing tiles
  2. Selecting tiles
  3. Placing tiles

How the game works is this:

  1. when new game is clicked, create a new game object with a list of Tiles (for the bag) & a list of Tile Spaces.
  2. when a user clicks on the tile bag, create a new Player Tile from a random Tile in the tile bag and then add it to that user
  3. when the user clicks on a Player Tile in their hand, select it
  4. when the user clicks on a Tile Space on the board, create a new Placed Tile that links the Tile Space with the user’s selected Player Tile using fields.
  5. add this clicked Tile Space to this game’s Used Spaces, and when this game’s Used Spaces contains this Tile Space, show a background color to indicate it’s filled
  6. The number & letter in this Tile Space should show this Game’s Placed Tiles:filtered by this Tile Space (because a Placed Tile was created that linked the user’s selected Player Tile with this Tile Space)

Any help is appreciated!

To view the app:

  1. Preview the app using the editor link
  2. Click “new game” and create a dummy account (this is so you can properly test the “game” page because that page needs data sent to it like the starting tiles that come when someone hits new game).
  3. The workflows in question are in blue on the game page (or you can click the “tile mgt” workflow folder)