a rush hour game engine in javascript / vue.js

Job ID: 30731331

Budget: $30 – $250 USD

I want to build a game engine for a rush hour like game.

Stack to use:
Html5, Vue.js v3, typescript, css

We will have the graphical design for the pieces made separately.

We have an arbitrary sized board of size bxb (typically b=5 or 6), with game pieces of size nx1 or 1xn where n<b. The board has one exit door. The game pieces can only be moved in one direction, that is the dimension where n lies (if nx1 then we can only move in the rows direction).

an example boards is like this one: https://img.utdstc.com/screen/5d5/e30/5d5e30ca58f409ae7642567003213d0cb9bd7fc837f08e93e1627af6e37e666c:800

-the goal is to free up the traffic jam such that one specific piece can exit the board through board exit door.

-No need for any board solving logic

User interactions:
-I want the user to be able to identify themselves with their email (no email validation logic required)
-I want the user to be able to enter a board id to solve

-I want all interactions of the user with the game to be logged. Eg. Game id, browser, tracked interactions as follows:
-sequence of steps taken by the user (what piece was moved when and where).
-I also want to record mouse or trackpad movements over as much of the screen as is possible.

-All user data to be stored on browser locally, I will handle submissions to some api at a later stage.