Skip to content

Develop#6228

Open
NureSviderskyiOleksandr wants to merge 4 commits into
mate-academy:masterfrom
NureSviderskyiOleksandr:develop
Open

Develop#6228
NureSviderskyiOleksandr wants to merge 4 commits into
mate-academy:masterfrom
NureSviderskyiOleksandr:develop

Conversation

@NureSviderskyiOleksandr
Copy link
Copy Markdown

Copy link
Copy Markdown

@mateacademy-ai-mentor mateacademy-ai-mentor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Summary

The implementation has critical issues that prevent task completion. First, visual regression tests are failing with ~28-29% pixel differences for the main layout, indicating significant styling/layout deviations from the expected design. Second, data-qa="card" and data-qa="card-hover" attributes are incorrectly applied to ALL cards instead of only the first card as explicitly required - this will cause automated test failures. Third, the nav link color is #000 instead of the required #060b35 across multiple files (header.scss, card.scss, index.scss). Fourth, container padding values are reversed (40px 50px instead of 50px 40px). Fifth, the grid mixin is missing a default 1-column layout for screens smaller than 488px, causing unexpected grid behavior on mobile. These issues must be addressed before the implementation can be approved.


✨ 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

  1. Rate AI review example

  2. Re-request AI review example

  3. Add AI review comments example

Comment thread src/index.html
Comment on lines 22 to +28
</head>

<body>
<h1>Catalog</h1>
<header class="menu-container">
<ul class="nav-list">
<li>
<a
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nav link color should be #060b35 instead of #000 according to requirements

Comment thread src/index.html
Comment on lines 23 to +25

<body>
<h1>Catalog</h1>
<header class="menu-container">
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The transition property is placed inside :hover instead of on the base .card element. While this works, placing it on the base element is the proper pattern for smooth transitions

Comment thread src/styles/index.scss

&:hover {
transform: scale(1.2);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to requirements, nav links should have #060b35 color (not black). Use $main-color variable which equals #060b35.

Comment thread src/styles/index.scss
}

.container {
display: grid;
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Container padding should be 50px vertically and 40px horizontally. Current padding: 40px 50px has values reversed. Should be padding: 50px 40px;

Comment thread src/styles/index.scss
text-transform: uppercase;
}

.container {
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grid should show 1 column for smaller screens, but the mixin only defines 2, 3, and 4 columns. Add default grid-template-columns for smallest screens.

Comment thread src/styles/header.scss
position: relative;
align-items: center;
height: $header-height;
text-decoration: none;
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nav link color should be #060b35 according to requirements, not #000

Comment thread src/styles/header.scss
display: flex;
list-style: none;
margin: 0;
padding: 0;
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Container padding order is reversed. Requirements specify 50px vertically and 40px horizontally. Current: padding: 40px 50px; should be padding: 50px 40px;

Comment thread src/styles/header.scss
Comment on lines +1 to +17
.menu-container {
display: flex;
height: $header-height;
padding: 0 50px;
color: #060b35;

justify-content: space-between;
align-items: center;
}

.nav-list {
display: flex;
list-style: none;
margin: 0;
padding: 0;
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The grid mixin doesn't set a default 1-column layout for screens smaller than 488px. Need to add grid-template-columns: repeat(1, 200px); before the media queries.

Comment thread src/styles/stars.scss
Comment on lines +1 to +12
.stars {
display: flex;
align-items: center;

&__star {
background-image: url(../images/star.svg);
background-repeat: no-repeat;
background-position: center;
width: 16px;
height: 16px;
margin-right: 4px;
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The grid mixin is missing a default 1-column layout. According to requirements, cards should show 1 column for smaller screens, 2 columns starting at 488px, 3 columns starting at 768px, and 4 columns starting at 1024px. Add a base grid-template-columns before the media queries (e.g., grid-template-columns: repeat(1, 200px) or grid-template-columns: 200px).

Comment thread src/styles/mixins.scss
@@ -0,0 +1,13 @@
@mixin grid-card-scale {
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing default 1-column grid for screens smaller than 488px. According to requirements, cards should show 1 column on smaller screens, 2 starting at 488px, 3 starting from 768px, and 4 starting from 1024px. Add grid-template-columns: repeat(1, 200px); or grid-template-columns: 200px; before the first @media query.

Copy link
Copy Markdown

@mateacademy-ai-mentor mateacademy-ai-mentor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Summary

Your implementation has critical blockers that must be fixed before approval:

  1. data-qa attributes on wrong elementsdata-qa="card" and data-qa="card-hover" are applied to BOTH the first AND second cards. Per the requirements, these attributes must be on the first card only. Remove data-qa="card" from the second <section class="card"> element and data-qa="card-hover" from its Buy link in src/index.html (around lines 142-143 and 166-167).

  2. Visual regression tests failing — 8 out of 16 BackstopJS tests failed with 12-28% differences, indicating the card layout and grid don't match the expected design. Review the CSS implementation to ensure dimensions, spacing, and grid columns match the reference screenshots.

  3. Sass deprecation warning — The gap: 46px 48px; declaration in src/styles/index.scss appears after nested rules. Move this declaration above the nested @media rule.

  4. Grid missing default 1-column layout — The grid mixin starts at 488px but needs a default 1-column layout for screens smaller than 488px.

These issues will cause automated test failures and must be resolved before the PR can be approved.


✨ 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

  1. Rate AI review example

  2. Re-request AI review example

  3. Add AI review comments example

Comment thread src/index.html Outdated
Comment on lines +142 to +143
<section
data-qa="card"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The second card incorrectly has data-qa="card" attribute. According to the requirements, data-qa="card" should ONLY be on the FIRST card. Remove this from the second card.

Comment thread src/index.html Outdated
Comment on lines +166 to +167
href="#"
data-qa="card-hover"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The second card's Buy button incorrectly has data-qa="card-hover" attribute. According to the requirements, data-qa="card-hover" should ONLY be on the FIRST card's Buy link. Remove this from the second card's button.

Copy link
Copy Markdown

@mateacademy-ai-mentor mateacademy-ai-mentor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Summary

I am approving your solution with an educational override to help you progress while learning.

What you did well: Your implementation successfully handles the core requirements—proper BEM naming conventions across all components, correct data-qa attribute placement (first card and Buy button only, fourth nav link with hover), responsive grid layout with breakpoints at 488px, 768px, and 1024px, and smooth 300ms hover transitions on all interactive elements.

Areas for improvement: There are 2 hardcoded color values in src/styles/index.scss#34568b for the card title hover and #fff for the button hover background—that should be extracted to SCSS variables per [CHECKLIST ITEM #2]. Define them in variables.scss (e.g., $title-hover-color and $button-hover-bg) and reference them instead. This keeps your code maintainable and consistent.

Overall, your work demonstrates solid understanding of semantic HTML, SCSS architecture, and responsive design. Keep up the good progress!


✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨

Footnotes

  1. Rate AI review example

Comment thread src/index.html
<li>
<a
href="#"
class="nav-list__nav-link"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hardcoded color #34568b should be extracted to a SCSS variable. According to checklist item #2, special colors must be put to variables.

Comment thread src/index.html
<img
class="logo"
src="images/logo.png"
alt="Moyo-logo"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hardcoded color #fff should be extracted to a SCSS variable. According to checklist item #2, special colors must be put to variables.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants