An open API service indexing awesome lists of open source software.

https://github.com/pasek108/fm-interactiveratingcomponent

Frontend mentor challange - Interactive rating component
https://github.com/pasek108/fm-interactiveratingcomponent

challenge frontend-mentor interactive-rating-component

Last synced: about 1 month ago
JSON representation

Frontend mentor challange - Interactive rating component

Awesome Lists containing this project

README

          

FM-InteractiveRatingComponent - Readme




My solution to the Frontend Mentor "Interactive rating component" challenge







> [!CAUTION]
>

Please, don't look at my solutions until you have completed it yourself.


> Challenges like these are an opportunity to improve by coming up with your own solutions. Take your time and think about your approach.
> If you can't complete a challenge, skip it and come back to it later. Only look at someone else's solutions as a last resort, and treat it as a defeat.


# Table of Contents
* [FrontendMentor :thinking:](#frontendmentor-thinking)
* [What is it](#what-is-it)
* [Is it worth doing](#is-it-worth-doing)
* [Overview :sparkles:](#overview-sparkles)
* [About](#about)
* [Features](#features)
* [Technologies](#technologies)
* [Setup](#setup)
* [Copyright](#copyright-copyright)
* [Details :scroll:](#details-scroll)
* [User interface](#user-interface)
* [Performance](#performance)


# FrontendMentor :thinking:

## What is it
[FrontendMentor](https://www.frontendmentor.io/home) is a platform that provides real-world front-end coding challenges to help developers improve their skills. It offers projects ranging from simple layouts to complex web applications, allowing users to practice HTML, CSS, and JavaScript by building solutions that closely resemble professional work.

## Is it worth doing
Frontend Mentor is a great resource for developers looking to gain hands-on experience by working on practical projects. The challenges help reinforce best practices, improve design implementation skills, and build a portfolio. However, since there is no automated grading system, feedback depends on community reviews, making it essential to engage with others for constructive criticism.


# Overview :sparkles:

## About
My solution to the [Frontend Mentor "Interactive rating component" challenge](https://www.frontendmentor.io/challenges/interactive-rating-component-koxpeBUmI). The project was created using Angular, TypeScript and SCSS.

Check out the [live version](https://pasek108.github.io/FM-InteractiveRatingComponent/) of this project, as well as my [Frontend Mentor profile](https://www.frontendmentor.io/profile/Pasek108).


![preview](/_for_readme/preview.png)

## Technologies
Languages:
- JavaScript
- TypeScript
- CSS
- HTML

Libraries and frameworks:
- [Angular](https://angular.dev) 15.2.0
- [SCSS](https://sass-lang.com)
- [GoogleFonts](https://fonts.google.com)

Programs:
- [VSCode](https://code.visualstudio.com)
- [PowerToys](https://learn.microsoft.com/en-us/windows/powertoys/)
- [ShareX](https://getsharex.com)
- [GIMP](https://www.gimp.org)

## Features
### Challenge requirements
- ✅ Optimal layout for the app depending on their device's screen size
- ✅ Hover states for all interactive elements on the page
- ✅ Select and submit a number rating
- ✅ "Thank you" card state after submitting a rating

## Setup
- Use [live version](https://pasek108.github.io/FM-InteractiveRatingComponent/).

- Download this repository and:
- Open project in VSCode
- Run `npm install`
- Run `ng serve`
- Open generated address in the browser

- Deployment for GitHub:
- Run `ng build --output-path docs --base-href /FM-InteractiveRatingComponent/`
- Delete `3rdpartylicenses.txt` from `/docs`

## Copyright :copyright:
I do not own the rights to the content of the challenges. All challenge data was downloaded and included only to provide context for the solutions.


# Details :scroll:

## User interface
### Rating
![rating](/_for_readme/UI/rating.png)
First, the user is asked to select a rating from 1 to 5.


![thank you](/_for_readme/UI/thank-you.png)
After submitting the form, a thank-you message is displayed.

## Performance

### Desktop
![desktop performance](/_for_readme/desktop-performance.png)

### Mobile
![mobile performance](/_for_readme/mobile-performance.png)