Skip to content

[MG_A1_01]: Add header layout - #2

Merged
Vikas-phulriya-jtg merged 1 commit into
developfrom
MG_A1_01
Aug 3, 2026
Merged

[MG_A1_01]: Add header layout#2
Vikas-phulriya-jtg merged 1 commit into
developfrom
MG_A1_01

Conversation

@manasgulatiJoshTech

@manasgulatiJoshTech manasgulatiJoshTech commented Jul 28, 2026

Copy link
Copy Markdown

Summary by CodeRabbit

  • New Features
    • Replaced the placeholder page with a structured, branded landing page.
    • Added responsive navigation with desktop links and a mobile hamburger menu.
    • Added dynamic navigation, buttons, headings, and card content.
    • Added responsive layouts, themed styling, reusable buttons, cards, icons, and decorative visuals.
    • Added custom fonts and icon support for a richer visual experience.
  • Chores
    • Improved project styling configuration and development workflow setup.

@coderabbitai

coderabbitai Bot commented Jul 28, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 84aef53b-c094-43a7-ae0c-a64454d4cdd9

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The placeholder page is replaced with a content-driven responsive landing page. New Sass tokens, mixins, components, themes, responsive header styles, IcoMoon assets, project metadata, and runtime navigation/menu behavior are added.

Changes

Landing page implementation

Layer / File(s) Summary
Tooling and validation configuration
.coderabbit.yaml, .github/workflows/pr-check.yml, package.json
Configuration formatting, package metadata, Sass watch tooling, and dependency range are updated while pull-request validation behavior remains unchanged.
Page content and interactive rendering
index.html, public/content.json, public/assets/fonts/selection.json, src/script/index.js
The placeholder markup is replaced with structured page content; navigation and button labels are loaded from JSON, and the hamburger menu updates visibility and ARIA state.
Sass tokens and module foundation
src/styles/main.scss, src/styles/scss/abstract/*, src/styles/scss/base/*, src/styles/scss/themes/*
Sass entrypoints, breakpoints, colors, typography tokens, utility mixins, reset rules, and light-theme variables are introduced and forwarded.
UI components, header layout, and icons
src/styles/scss/components/*, src/styles/scss/layouts/*, src/styles/scss/vendors/*
Button, card, floater, icon, responsive header, decorative hue, and IcoMoon font styles are added and wired through Sass indexes.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Sequence Diagram(s)

sequenceDiagram
  participant Browser
  participant indexjs as src/script/index.js
  participant Content as public/content.json
  participant DOM
  Browser->>indexjs: Load front-end script
  indexjs->>Content: Fetch page content
  Content-->>indexjs: Return navigation and button labels
  indexjs->>DOM: Render links and buttons
  Browser->>DOM: Click hamburger menu
  DOM->>indexjs: Trigger click handler
  indexjs->>DOM: Toggle classes and ARIA attributes
Loading

Possibly related PRs

Suggested reviewers: vikas-phulriya-jtg

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title accurately identifies the header layout work, which is a significant part of the changeset.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch MG_A1_01

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@manasgulatiJoshTech manasgulatiJoshTech changed the title MG_A1_01 [MG_A1_01]: Add header layout Jul 28, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 18


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 5d9b2377-4be0-4ae6-903f-faebb77a5b01

📥 Commits

Reviewing files that changed from the base of the PR and between 2b400af and dbcc7f7.

⛔ Files ignored due to path filters (23)
  • package-lock.json is excluded by !**/package-lock.json, !package-lock.json
  • public/assets/fonts/icomoon.eot is excluded by !**/*.eot
  • public/assets/fonts/icomoon.svg is excluded by !**/*.svg
  • public/assets/fonts/icomoon.ttf is excluded by !**/*.ttf
  • public/assets/fonts/icomoon.woff is excluded by !**/*.woff
  • public/assets/images/Ellipse 23.png is excluded by !**/*.png
  • public/assets/images/Group 3.svg is excluded by !**/*.svg
  • public/assets/images/airbnb.png is excluded by !**/*.png
  • public/assets/images/booking.png is excluded by !**/*.png
  • public/assets/images/carousel.png is excluded by !**/*.png
  • public/assets/images/city.jpg is excluded by !**/*.jpg
  • public/assets/images/expedia.png is excluded by !**/*.png
  • public/assets/images/globe.png is excluded by !**/*.png
  • public/assets/images/logo.svg is excluded by !**/*.svg
  • public/assets/images/mountain.jpg is excluded by !**/*.jpg
  • public/assets/images/object.svg is excluded by !**/*.svg
  • public/assets/images/ocean.jpg is excluded by !**/*.jpg
  • public/assets/images/orbitz.png is excluded by !**/*.png
  • public/assets/images/star.svg is excluded by !**/*.svg
  • public/assets/images/travel-point.png is excluded by !**/*.png
  • public/assets/images/triangles.png is excluded by !**/*.png
  • public/assets/images/tripadvisor.png is excluded by !**/*.png
  • public/assets/images/user.jpg is excluded by !**/*.jpg
📒 Files selected for processing (28)
  • .coderabbit.yaml
  • .github/workflows/pr-check.yml
  • index.html
  • package.json
  • public/assets/fonts/selection.json
  • public/content.json
  • public/styles/main.css
  • src/script/index.js
  • src/styles/main.scss
  • src/styles/scss/abstract/_breakpoint.scss
  • src/styles/scss/abstract/_color.scss
  • src/styles/scss/abstract/_function.scss
  • src/styles/scss/abstract/_index.scss
  • src/styles/scss/abstract/_mixin.scss
  • src/styles/scss/base/_index.scss
  • src/styles/scss/base/_reset.scss
  • src/styles/scss/base/_typography.scss
  • src/styles/scss/components/_button.scss
  • src/styles/scss/components/_cards.scss
  • src/styles/scss/components/_floater.scss
  • src/styles/scss/components/_icon.scss
  • src/styles/scss/components/_index.scss
  • src/styles/scss/layouts/_header.scss
  • src/styles/scss/layouts/_index.scss
  • src/styles/scss/themes/_index.scss
  • src/styles/scss/themes/_light.scss
  • src/styles/scss/vendors/_icomoon.scss
  • src/styles/scss/vendors/_index.scss

Comment on lines +15 to +18
- name: Checkout (full history for commit range)
uses: actions/checkout@v4
with:
fetch-depth: 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.

🔒 Security & Privacy | 🟠 Major | ⚡ Quick win

Harden the checkout step’s credentials and action pinning.

actions/checkout@v4 is not pinned to an immutable commit, and credential persistence is enabled. Pin the action to a full commit SHA and disable persisted credentials so later steps cannot unintentionally reuse the repository token.

🧰 Tools
🪛 zizmor (1.26.1)

[warning] 15-18: credential persistence through GitHub Actions artifacts (artipacked): does not set persist-credentials: false

(artipacked)


[error] 16-16: unpinned action reference (unpinned-uses): action is not pinned to a hash (required by blanket policy)

(unpinned-uses)

Source: Linters/SAST tools

Comment thread index.html
Comment thread index.html Outdated
Comment thread package.json Outdated
{
"name": "static-html-base-template",
"description": "",
"description": "### Prerequisites",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Replace the misleading package description.

"### Prerequisites" is a Markdown heading, not a description of this project, so package metadata consumers will see incorrect information.

Comment thread package.json Outdated
Comment thread src/styles/scss/abstract/_mixin.scss Outdated
Comment on lines +6 to +57
//create flex with default values which are commonly used throughout project
@mixin flex(
$direction: row,
$space: space-between,
$gap: 1rem,
$align-item: center
) {
display: flex;
flex-direction: $direction;
justify-content: $space;
gap: $gap;
align-items: $align-item;
}

//responding to different screen sizes as defined in breakpoint.scss
@mixin responsiveUp($screen) {
@media (min-width: map.get(bp.$breakpoints,$screen)) {
@content;
}
}

//adding shadow
@mixin shadow(
$x: 0,
$y: 62px,
$blur: 17px,
$color: color.change(cl.$black-800, $alpha: 0.1),
$rad: 0
) {
box-shadow: $x $y $blur $rad $color;
}

//changing font properties
@mixin font($size, $color, $weight) {
color: $color;
font-size: $size;
font-weight: $weight;
}

//creating grid layout
@mixin grid($col, $gap: 1rem) {
display: grid;
grid-template-columns: repeat($col, 1fr);
gap: $gap;
}

//to apply typography properties associated to semantic names
@mixin useTypo($typography-type) {
@each $key, $value in $typography-type {
#{$key}: $value;
}
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Add standard Sass documentation for reusable mixins.

The current comments do not document parameters, defaults, or expected inputs. This is especially unclear for responsiveUp’s breakpoint key and useTypo’s map structure.

As per path instructions, standard Sass documentation/comments are required for mixins.

🧰 Tools
🪛 Stylelint (17.14.0)

[error] 21-21: Expected mixin name "responsiveUp" to be kebab-case (scss/at-mixin-pattern)

(scss/at-mixin-pattern)


[error] 53-53: Expected mixin name "useTypo" to be kebab-case (scss/at-mixin-pattern)

(scss/at-mixin-pattern)

Source: Path instructions

Comment thread src/styles/scss/abstract/_mixin.scss Outdated
Comment thread src/styles/scss/base/_reset.scss
Comment thread src/styles/scss/layouts/_header.scss Outdated
Comment thread src/styles/scss/layouts/_header.scss Outdated
@manasgulatiJoshTech
manasgulatiJoshTech changed the base branch from main to MG_A1_00 July 31, 2026 04:52
Base automatically changed from MG_A1_00 to develop August 3, 2026 02:27
border-radius: f.px-to-rem(100);
padding: 0.5rem 1rem;
max-width: f.px-to-rem(115);
@include mix.use-typo(typo.$nav-link-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.

add a empty line above this

@use '../base/typography' as typo;

//defining styling for parent header container
.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.

according to BEM it should have been header

Comment on lines +97 to +120
@include mix.responsive-up(md) {
.container {
flex-direction: row;
//button inside header container
&__btn {
max-width: f.px-to-rem(220);
@include mix.flex($gap: f.px-to-rem(8));
flex-wrap: wrap;
}
//the navigation link box that pop up when hamburger icon is clicked
&__nav-box {
width: 90%;
top: f.px-to-rem(75);
left: 7%;
padding-right: 0.75rem;
@include mix.flex($gap: 1.5rem);
flex-wrap: wrap;
}
//buttons inside navBox remain hidden in tablet or higher view
&__nav-box-btn {
display: 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.

lets discuss these

Comment thread index.html
Comment on lines +51 to +53
<div class="orangeHue">
<img src="/assets/images/Ellipse 23.webp" alt="Coloured hue" />
</div>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

class organgeHue?

@Vikas-phulriya-jtg
Vikas-phulriya-jtg merged commit ac2146f into develop Aug 3, 2026
2 checks passed
@Vikas-phulriya-jtg
Vikas-phulriya-jtg deleted the MG_A1_01 branch August 3, 2026 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants