https://github.com/haquanq-frontendmentor/interactive-pricing-component
Solution for frontendmentor.io challenge: interactive-pricing-component
https://github.com/haquanq-frontendmentor/interactive-pricing-component
bem-css drag-and-drop frontendmentor html postcss slider typescript vite
Last synced: 7 days ago
JSON representation
Solution for frontendmentor.io challenge: interactive-pricing-component
- Host: GitHub
- URL: https://github.com/haquanq-frontendmentor/interactive-pricing-component
- Owner: haquanq-frontendmentor
- License: mit
- Created: 2024-07-18T04:56:19.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-09-16T15:34:41.000Z (7 months ago)
- Last Synced: 2025-09-16T18:01:05.127Z (7 months ago)
- Topics: bem-css, drag-and-drop, frontendmentor, html, postcss, slider, typescript, vite
- Language: CSS
- Homepage: https://haquanq-frontendmentor.github.io/interactive-pricing-component/
- Size: 247 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Frontend Mentor - Interactive Pricing Component Solution
This is a solution to the [Interactive pricing component challenge on Frontend Mentor](https://www.frontendmentor.io/challenges/interactive-pricing-component-t0m8PIyY8). Frontend Mentor challenges help you improve your coding skills by building realistic projects.
## Table of Contents
- [Project Overview](#sunrise-project-overview)
- [Tech Stack and Approach](#stars-tech-stack-and-approach)
- [Local Development](#leaves-local-development)
- [Deployment](#maple_leaf-deployment)
## :sunrise: Project Overview
### Challenge Requirements
- View the optimal layout for the app depending on their device's screen size
- See hover states for all interactive elements on the page
- Use the slider and toggle to see prices for different page view numbers
### Status
Features
- [x] Snappy range slider with drag and drop (mouse/touch)
Accessibility
- [x] Responsive accross different screen sizes
- [x] Interactive elements have clear focus indicator
### Preview (Desktop)

## :stars: Tech Stack and Approach
### Built With
- **HTML5** – Semantic structure
- **CSS Grid & Flexbox** – Layout
- **PostCSS** – Nested rules, custom media queries, future CSS features, minification
- **Stylelint** – CSS linting, code style consistency
- **TypeScript** - Interactivity and application logic
- **Vite** - Fast development server, production build and easy configuration
### Approach
- Mobile-first workflow for better performance on smaller devices
- Accessibility guided by [ARIA Authoring Practices Guide (APG)](https://www.w3.org/WAI/ARIA/apg/)
## :leaves: Local Development
### Prerequisites
Install the following:
- Git (latest LTS recommended)
- Node.js (latest LTS recommended)
### Setup
```
git clone https://github.com/haquanq-frontendmentor/interactive-pricing-component.git
cd interactive-pricing-component
npm install
```
### Start Development Server
```
npm run dev
```
## :maple_leaf: Deployment
Deployed to Github Pages via Github Actions (manually triggered).