Skip to content

haquanq-frontendmentor/ecommerce-product-page

Repository files navigation

Frontend Mentor - Ecommerce Product Page Solution

This is a solution to the E-commerce product page 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 site depending on their device's screen size
  • See hover states for all interactive elements on the page
  • Open a lightbox gallery by clicking on the large product image
  • Switch the large product image by clicking on the small thumbnail images
  • Add items to the cart
  • View the cart and remove items from it

Status

Features

  • Auto re-aligned modal position based on trigger
  • Interactive image slider

Accessibility

  • Responsive accross different screen sizes
  • Interactive elements have clear focus indicator

Preview

🌠 Tech Stack and Approach

Built With

  • HTML5 – Semantic structure
  • SolidJS – Fine-grained state management reactivity
  • TailwindCSS – Utility-first CSS for fast development
  • TypeScript - Interactivity and application logic
  • Vite - Fast development server, production build and easy configuration
  • EmblaCarousel - Minimal API, small package

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/ecommerce-product-page.git
cd ecommerce-product-page
pnpm install

Start Development Server

pnpm dev

🍁 Deployment

Deployed to Github Pages via Github Actions (manually triggered)