{"id":23377573,"url":"https://github.com/mayen007/interactive-rating-component","last_synced_at":"2025-06-14T17:34:46.052Z","repository":{"id":265309727,"uuid":"895673559","full_name":"Mayen007/Interactive-rating-component","owner":"Mayen007","description":"Solution to Frontend Mentor's Interactive Rating Component Challenge. A mobile-first, interactive rating component where users select a rating and see a thank-you message upon submission. Built with HTML, CSS, and JavaScript, focusing on accessibility and responsive design.","archived":false,"fork":false,"pushed_at":"2024-11-28T20:48:05.000Z","size":1906,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-08T04:33:14.888Z","etag":null,"topics":["beginner-project","flexbox-css","html-css-javascript","junior","positioning","semantic","vanilla-js"],"latest_commit_sha":null,"homepage":"https://mayen007.github.io/Interactive-rating-component/","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mayen007.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-28T16:49:02.000Z","updated_at":"2024-11-28T20:52:31.000Z","dependencies_parsed_at":"2024-11-28T21:39:26.685Z","dependency_job_id":null,"html_url":"https://github.com/Mayen007/Interactive-rating-component","commit_stats":null,"previous_names":["mayen007/interactive-rating-component"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mayen007/Interactive-rating-component","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mayen007%2FInteractive-rating-component","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mayen007%2FInteractive-rating-component/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mayen007%2FInteractive-rating-component/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mayen007%2FInteractive-rating-component/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mayen007","download_url":"https://codeload.github.com/Mayen007/Interactive-rating-component/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mayen007%2FInteractive-rating-component/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259855874,"owners_count":22922399,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["beginner-project","flexbox-css","html-css-javascript","junior","positioning","semantic","vanilla-js"],"created_at":"2024-12-21T18:15:53.555Z","updated_at":"2025-06-14T17:34:45.776Z","avatar_url":"https://github.com/Mayen007.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Frontend Mentor - Interactive Rating Component Solution\n\nThis is my solution to the [Interactive Rating Component challenge on Frontend Mentor](https://www.frontendmentor.io/challenges/interactive-rating-component-koxpeBUmI). This project allowed me to practice creating an interactive UI component with a focus on responsiveness and user experience.\n\n## Table of Contents\n\n- [Overview](#overview)\n  - [The Challenge](#the-challenge)\n  - [Screenshot](#screenshot)\n  - [Links](#links)\n- [My Process](#my-process)\n  - [Built With](#built-with)\n  - [What I Learned](#what-i-learned)\n  - [Continued Development](#continued-development)\n  - [Useful Resources](#useful-resources)\n- [Author](#author)\n\n---\n\n## Overview\n\n### The Challenge\n\nUsers should be able to:\n\n- View the optimal layout for the app depending on their device's screen size.\n- See hover and focus states for all interactive elements.\n- Select and submit a number rating.\n- View a \"Thank you\" message after submitting their rating.\n\n### Screenshot\n\n![Interactive Rating Component Screenshot](./assets/images/desktop-view.png)\n\n### Links\n\n- **Solution URL:** [GitHub Repository](https://github.com/Mayen007/Interactive-rating-component)\n- **Live Site URL:** [GitHub Pages](https://mayen007.github.io/Interactive-rating-component/)\n\n---\n\n## My Process\n\n### Built With\n\n- Semantic HTML5 markup\n- CSS custom properties\n- Flexbox for layout\n- Mobile-first workflow\n- Vanilla JavaScript for interactivity\n- [Overpass](https://fonts.google.com/specimen/Overpass) font\n\n---\n\n### What I Learned\n\nThis project helped me improve my skills in responsive design, CSS styling, and JavaScript interactivity. Here are some key takeaways:\n\n1. **Dynamic User Feedback with JavaScript:**\n\n   - Handling user interactions dynamically using `data-attributes`.\n\n   ```javascript\n   ratingButtons.forEach((button) =\u003e {\n     button.addEventListener(\"click\", () =\u003e {\n       rating = parseInt(button.dataset.rating, 10);\n       button.classList.add(\"selected\");\n     });\n   });\n   ```\n\n### Responsive Design\n\nA mobile-first workflow ensured that the layout was optimized for small screens first.\n\n---\n\n## Continued Development\n\nIn future projects, I aim to:\n\n- Dive deeper into accessibility features like `aria-pressed` and `aria-live`.\n- Experiment with animations for smoother transitions.\n- Implement state management with libraries like React for similar projects.\n\n---\n\n## Useful Resources\n\n- [MDN Web Docs](https://developer.mozilla.org/) - For HTML, CSS, and JavaScript documentation.\n- [CSS-Tricks](https://css-tricks.com/) - Helped with hover and focus state designs.\n- [Frontend Mentor Slack Community](https://frontendmentor.io/slack) - Great for getting feedback and advice.\n\n---\n\n## Author\n\n- **Frontend Mentor:** [@Mayen007](https://www.frontendmentor.io/profile/Mayen007)\n- **GitHub:** [Mayen007](https://github.com/Mayen007)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmayen007%2Finteractive-rating-component","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmayen007%2Finteractive-rating-component","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmayen007%2Finteractive-rating-component/lists"}