add solution#6884
Conversation
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
I am requesting changes because a key checklist requirement about BEM file structure is not met. All styles, including the .stars block and its elements/modifiers, are currently in src/style.css, but the task explicitly requires that each BEM block has its own separate file [CHECKLIST ITEM #2]. To fix this, move the stars-related rules (e.g., .stars, .stars__star, .stars--0 … .stars--5) into a dedicated CSS file such as src/blocks/stars/stars.css, and ensure it is correctly linked or imported in your HTML or main stylesheet. Functionally, your stars logic is solid: you have the correct number of blocks, modifiers, and active stars, using background-image and flex without gap, which is good. As a minor improvement, double-check that the star width, height, and horizontal spacing match the Figma measurements exactly. Once the BEM block styles are split into their own file and any design tweaks are aligned with Figma, your solution will be ready to pass.
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Important
Fix the issues, commit the changes, and then re-request my review using the Re-request review button2 in the Reviewers tab.
Tip
If you have any comments about this review, please leave a message in the Add a comment section below and mention me with the @mateacademy-ai-mentor tag3.
I will read your message during my next review of your pull request. Please do not reply directly to my comments, as that feature is not supported yet.
Caution
Do not close the pull request until the review is complete. Closing it early can lead to unexpected behavior and disrupt the review process.
Footnotes
| margin: 0; | ||
| } | ||
|
|
||
| .stars { |
There was a problem hiding this comment.
This violates checklist item "Each BEM block has its own separate file": all styles, including the .stars block, are defined in a single style.css file instead of separate CSS file(s) per BEM block.
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
I am requesting changes because there are still a couple of critical issues that directly affect the required functionality and checklist compliance. First, the selector typo .stars____star (four underscores) in both css/main.min.css and src/_stars.css does not match the actual HTML class stars__star, so the stars elements are not styled correctly and this violates the requirement that all 5 stars__star elements per block be styled as intended. You need to change those selectors to .stars__star and regenerate main.min.css from the corrected source so the compiled CSS matches the HTML.
Second, [CHECKLIST ITEM #2] requires each BEM block to have its own separate file with block-only styles; right now _stars.css sits at the root and also contains global body { margin: 0; } rules, while main.min.css duplicates and even conflicts with stars-related logic. You should move the stars block styles into a dedicated block file (for example src/blocks/stars/stars.css), keep only block-related rules there, and move global page styles like body { margin: 0; } into a separate global stylesheet. As a minor improvement, double-check that the flex layout spacing and star sizes match the Figma measurements and consider adding a font-family with a generic fallback on body to better align with the style checklist. Overall your structure and logic are close; fixing the selector mismatch and cleaning up the BEM file separation will bring the solution fully in line with the task requirements.
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Important
Fix the issues, commit the changes, and then re-request my review using the Re-request review button2 in the Reviewers tab.
Tip
If you have any comments about this review, please leave a message in the Add a comment section below and mention me with the @mateacademy-ai-mentor tag3.
I will read your message during my next review of your pull request. Please do not reply directly to my comments, as that feature is not supported yet.
Caution
Do not close the pull request until the review is complete. Closing it early can lead to unexpected behavior and disrupt the review process.
Footnotes
| display: flex; | ||
| } | ||
|
|
||
| .stars____star { |
There was a problem hiding this comment.
The selector .stars____star has four underscores, but your HTML uses class="stars__star" with two underscores. This mismatch breaks styling for the stars and conflicts with the requirement that the 5 stars__star elements in each block be styled correctly.
| @@ -0,0 +1,36 @@ | |||
| body { | |||
There was a problem hiding this comment.
Checklist item #2 says "Each BEM block has its own separate file" and the generalized requirements mention using a dedicated file such as src/blocks/stars/stars.css. Here you created _stars.css at the root of src, which might not satisfy the expected BEM file structure; consider moving/renaming it to a block-specific path and name.
| .stars { | ||
| display: flex; | ||
| } | ||
|
|
There was a problem hiding this comment.
The selector .stars____star uses four underscores and does not match your HTML elements (class="stars__star"). This breaks the styles for the stars in the minified CSS and violates the requirement that the block’s elements be styled consistently. Correct this to .stars__star or ensure the minified CSS is generated from the fixed source.
| @@ -9,10 +9,56 @@ | |||
| <title>Stars</title> | |||
There was a problem hiding this comment.
The .stars____star selector has four underscores and does not match the actual element class stars__star used in HTML. This prevents these styles from applying; update the selector to .stars__star so it targets the correct elements.
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
I am approving your solution as an educational override so you can keep progressing while you refine a few remaining details. Functionally, your stars block is implemented very well: six stars blocks, five stars__star elements each, proper stars--0–stars--5 modifiers, flex layout, and background images are all correctly used and nicely structured.
The main issue to fix is that body { margin: 0; } is currently inside src/_stars.css, which mixes global styles with the stars block and violates the “each BEM block has its own separate file” requirement [CHECKLIST ITEM #2]; instead, move that body rule into a separate global stylesheet (e.g., global.css) and keep _stars.css only for .stars and .stars__star. Additionally, the checklist asks for active yellow stars to be implemented via a container modifier plus a pseudo-selector [CHECKLIST ITEM #1], so it’s worth revisiting your CSS to layer the active state using something like ::before rather than only swapping the background directly. As a smaller improvement, you can add a font-family with a generic fallback (like sans-serif) on body to satisfy the font guideline [CHECKLIST ITEM #4].
Overall, your structure, use of BEM naming, and adherence to most constraints are strong, and these remaining tweaks are great opportunities to deepen your understanding of BEM file organization and pseudo-element patterns. Your solution is approved, and you’re clearly on the right track—keep building on this solid foundation.
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Footnotes
| body { | ||
| margin: 0; | ||
| } |
There was a problem hiding this comment.
This violates checklist item #2: "Each BEM block has its own separate file". body is a global style and should live in a separate global stylesheet instead of the stars block file, which must contain only block-related styles.
DEMO LINK
TEST REPORT LINK
[х] Yellow stars are added with container modifier + pseudo-selector (NO extra classes)
[х] Each BEM block has its own separate file
[х] All
Typical MistakesfromBEMlesson theory are checked.[х] Code follows all the Code Style Rules ❗️