This is a solution to the Interactive rating component challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.
Users should be able to:
- View the optimal layout for the app depending on their device's screen size
- See hover states for all interactive elements on the page
- See a disabled Submit button until a number rating is selected
- Select and submit a number rating
- See the "Thank you" card state after submitting a rating
- Semantic HTML5 markup
- Sass
- TypeScript
This is my first project using Sass and TypeScript outside of course guided projects (albeit in fairly moderate amounts).
After valuable feedback, I decided to add one of the above users stories ("See a disabled Submit button until a number rating is selected") and to implement it.
I'm still trying to get the hang of TS, it's really hard for me to understand how it benefits the code at times, and I feel like most of the TS code I wrote was because TS "made" me by showing errors if I didn't.
I definitely learned a lot about the basics of Sass in this project and found it really handy, especially when it comes to switch between styles for active, hover and disabled states.
Besides that, the project helped me consolidate stuff like fading in elements with CSS transitions.