Skip to content

haquanq-frontendmentor/rock-paper-scissors

Repository files navigation

Frontend Mentor - Rock, Paper, Scissors Solution

This is a solution to the Rock, Paper, Scissors challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.

Solution post Live demo

Table of Contents

🌅 Project Overview

Challenge Requirements

  • View the optimal layout for the game depending on their device's screen size
  • Play Rock, Paper, Scissors against the computer
  • Maintain the state of the score after refreshing the browser (optional)
  • Bonus: Play Rock, Paper, Scissors, Lizard, Spock against the computer (optional)

Status

Features

  • Replaced 'Rock, Paper, Scissors, Lizard, Spock' with 'Pumpkin, Vampire, Death, Candy, and Frankenstein' for halloween
  • Toggle between dark/light mode

Accessibility

  • Responsive accross different screen sizes
  • Added custom indicator when interactive elements focused

🌠 Tech Stack and Approach

Built with

  • HTML5 – Semantic structure
  • React – Ease of use, great eco-system
  • TailwindCSS – Utility-first CSS for fast development
  • TypeScript - Interactivity and application logic
  • Vite - Fast development server, production build and easy configuration.

Approach

🍃 Local Development

Prerequisites

Install the following:

  • Git (latest version)
  • Node.js (latest LTS recommended)
  • pnpm (latest version)

Setup

git clone https://github.com/haquanq-frontendmentor/rock-paper-scisoors.git
cd rock-paper-scisoors
pnpm install

Start Development Server

pnpm dev

🍁 Deployment

Deployed to Github Pages via Github Action.