peremoga#5464
Conversation
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
I am requesting changes because there are still two core requirement mismatches that block full completion of the task. First, the styles are currently in src/styles/index.scss and the HTML links to that file, while the task explicitly requires using src/styles/main.scss instead; this is a naming/location requirement, so you need to move/rename the SCSS to main.scss and update the <link> href in src/index.html accordingly. Second, the calendar width is defined as 7 * $day-size + 6 * $gap-size while padding: $calendar-padding is added separately, which makes the total outer width larger than “7 columns + 10px paddings” and violates the layout requirement about exact width.
Critical issues to fix:
- In
src/styles/index.scss(andsrc/index.html), update the setup so that all styles live insrc/styles/main.scssand the HTML<link>points tostyles/main.scssas required by the task description. - In
src/styles/main.scss, adjust the width and padding calculation so that the full box including padding equals 7 day columns plus 10px total horizontal paddings (for example, by reducing the content width to account forpadding-leftandpadding-right, or by integrating padding into the width formula), ensuring the outer width matches the requirement.
Minor improvements (optional): you could make the hover transition more explicit with a transition shorthand for clarity, but that’s not blocking. Overall, your calendar logic, BEM structure, flex layout, modifiers, and hover behavior are implemented very well—once you fix the stylesheet file and width/padding calculations, your solution will fully meet 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
| $day-bg-color: #eee; | ||
| $day-hover-color: #ffbfcb; | ||
| $border-color: black; | ||
|
|
||
| body { |
There was a problem hiding this comment.
The task requires writing styles in src/styles/main.scss and linking that SCSS file from HTML, but here the stylesheet is styles/index.scss. This violates the requirement: "Write styles in src/styles/main.scss instead of src/style.css." Please move your styles to main.scss and update the href accordingly.
| flex-wrap: wrap; | ||
| gap: $gap-size; | ||
| padding: $calendar-padding; | ||
| width: $week-days * $day-size + ($week-days - 1) * $gap-size; |
There was a problem hiding this comment.
The calendar width is set to $week-days * $day-size + ($week-days - 1) * $gap-size while also using padding: $calendar-padding. The requirement says to "limit its width to exactly 7 columns + 10px paddings", but with separate padding the total outer width becomes larger than that. Consider adjusting the width or padding calculation so that the full box (content + padding) equals 7 day columns plus the required 10px paddings.
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
Your solution meets all the core functional and checklist requirements for this task, so I am approving it. The calendar is correctly centered with flex on the body, uses a flex-wrap layout with a 1px gap, and renders exactly 31 .calendar__day elements without hardcoded numbers in the HTML. Day numbers are injected via a Sass @for loop into ::before, using the required Arial 30px styling, and each day is a 100px grey square with a 1px black border and proper flex centering. The block/element/modifier structure follows BEM correctly: calendar as the block, calendar__day as the element, and all modifiers attached only to the block, satisfying [CHECKLIST ITEM #2] and [CHECKLIST ITEM #3]. Both start-day and month-length modifiers are generated via SCSS loops/maps and correctly adjust the first day’s position and hide extra days, with sensible defaults set in the HTML. Hover behavior (pointer cursor, pink background, 20px upward transform, and 0.5s animation) works as specified and feels smooth in practice. As a very minor improvement, you could consider using the transition shorthand instead of only transition-duration for even clearer intent, but this is not required. Overall, this is a solid, well-structured implementation—nice work bringing all the SCSS features and layout details together cleanly.
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
No description provided.