Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UI Overhaul (Incomplete) #4

Merged
merged 4 commits into from
Feb 1, 2023
Merged

UI Overhaul (Incomplete) #4

merged 4 commits into from
Feb 1, 2023

Commits on Jan 30, 2023

  1. Initial Vite/React setup ⚡

    (started from a clean working directory with the same git history)
    - Bootstrapped project from the Vite react template (with TypeScript and SWC)
    - Added initial configuration for ESLint and Prettier
    - Using husky as a pre-commit hook utility (linting, formating, and testing)
    - Changed manifest.json icons and favicons to match intended design
    - Implemented maskable icons in the manifest.json as suggested by the PWA documentation
      learn more: https://web.dev/maskable-icon
    - Made changes to improve overall SEO (head metadata, robots.txt [unconfigured], etc.)
    lewxdev committed Jan 30, 2023
    Configuration menu
    Copy the full SHA
    09ae08b View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2023

  1. Jest testing & Redux 🧪

    - Implemented redux state slices for game and UI
    - Added initial respective tests for redux state slices
    - Initial configuration for react-redux with @reduxjs/toolkit
    - Added configuration for jest with typescript
    - Added ESLint rule for typescript consistent type imports
    lewxdev committed Jan 31, 2023
    Configuration menu
    Copy the full SHA
    2f2ecca View commit details
    Browse the repository at this point in the history

Commits on Feb 1, 2023

  1. Initial UI implementation 💎

    (considering this 'MVP', working state, but a lot of cleanup and additions needed)
    - Configured usage for Tailwind as the CSS framework (it's my first time, don't @ me)
    - Implemented UI components as close to the design spec as possible (need to figure out dynamic scaling for the disks/towers)
    
    Features:
    - Standard gameplay with rudimentary win condition, incrementing the 'diskCount' each successive win from an confirmation dialog (built-in)
    - Complex but subtle transitions/animations for tower hover and selection states
    - Keyboard shortcuts for tower selection
    - Reset game option
    - Stats for the number of moves and the minimum number of moves to win
    
    Todo:
    - Add timer to game state slice (likely timestamp comparison rather than an interval)
    - Implement logic and display for score multiplier (an equation that computes a number between 0 and 1 based on the timer, number of moves, and minimum number of moves)
    - Create a modal component to be used for a custom win dialog and future content
    - Investigate TailwindCSS class composition that works well with their prettier plugin
    - Add responsive drawer menu and implement the corresponding options
    lewxdev committed Feb 1, 2023
    Configuration menu
    Copy the full SHA
    80baa25 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f850d2e View commit details
    Browse the repository at this point in the history