Skip to content

Blog redesign#94

Merged
UmairJibran merged 2 commits intomasterfrom
blog-redesign
May 16, 2025
Merged

Blog redesign#94
UmairJibran merged 2 commits intomasterfrom
blog-redesign

Conversation

@UmairJibran
Copy link
Copy Markdown
Owner

No description provided.

@UmairJibran UmairJibran self-assigned this May 16, 2025
@vercel
Copy link
Copy Markdown

vercel bot commented May 16, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
waltzes ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 16, 2025 4:43pm
waltzes-di8o ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 16, 2025 4:43pm

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Hello @UmairJibran, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

Summary of Changes

Hello team! Gemini here, providing a summary of this pull request titled "Blog redesign". The primary goal of this PR appears to be enhancing the visual presentation of the blog section, specifically focusing on the individual blog post pages, and adding a new blog post. It also includes a minor styling fix on the main blog listing page.

Highlights

  • New Blog Post Added: A new blog post titled 'Mastering ATS Optimization: Enhance Your Resume’s Reach' has been added to the collection.
  • Blog Post Header Redesign: The header section on individual blog post pages ([slug]/page.tsx) has been significantly redesigned. The cover image is now used as a full-width background for the header, with the title, excerpt, and author information overlaid on top. This creates a more visually striking introduction to each post.
  • Styling Improvements: Minor styling adjustments were made, including ensuring the latest blog post image on the main blog page covers its container correctly and standardizing quote usage in import statements and strings.

Changelog

  • landing-page/_blogs/ats-resume-optimization.md
    • Added a new markdown file containing the blog post 'Mastering ATS Optimization: Enhance Your Resume’s Reach'.
  • landing-page/src/app/blogs/[slug]/page.tsx
    • Changed import statements and string literals from double quotes to single quotes (lines 1-8, 22).
    • Refactored the header component to use the blog cover image as a background with overlaid text (lines 64-106).
    • Adjusted text colors within the header for better contrast against the background image (lines 80, 84, 96).
    • Added a white border around the author's profile picture in the header (line 92).
    • Removed the separate featured image section below the header.
  • landing-page/src/app/blogs/page.tsx
    • Updated the className for the latest blog post cover image to include object-cover w-full h-full for better image display (line 33).
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.


New blog post arrives,
Header shines with image bright,
Words now stand out clear.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

The pull request introduces a new blog post and updates the blog listing and detail pages to implement a redesign. The new blog post content is well-structured and informative. The redesign on the blog detail page creates a visually striking header by integrating the cover image and blog metadata. The changes to the blog listing page improve the image handling for the featured post.

Overall, the changes are positive and contribute to the blog's appearance and content. There are a few areas related to the complexity and potential responsiveness/accessibility of the new blog header that could be reviewed further.

Summary of Findings

  • Blog Header Complexity: The new header design on the blog detail page uses absolute positioning and negative margins, increasing complexity which could impact maintainability and responsiveness testing.
  • Accessibility (Text Contrast): Text overlaid on the cover image in the blog header needs careful contrast checking to ensure readability and accessibility across different images.
  • Responsiveness Testing: The combination of negative margins and absolute positioning in the blog header requires thorough testing across various screen sizes to prevent layout issues.
  • Stylistic Changes (Quotes): Changes from double quotes to single quotes for strings were made in several places. These are minor stylistic changes and do not impact functionality. (Not commented on due to review settings).

Merge Readiness

The pull request introduces a new blog post and implements a significant redesign of the blog pages. The core functionality appears correct, and the visual changes achieve the stated goal. The identified issues are primarily related to the complexity, potential responsiveness, and accessibility of the new blog header design. These are medium severity concerns that should ideally be addressed or thoroughly verified before merging to ensure the long-term quality and usability of the blog pages. I am unable to approve the pull request directly; please have other reviewers examine the changes and the feedback provided before merging.

Comment on lines +64 to 105
<header className="relative text-center mb-10 -mx-4 sm:-mx-8 md:-mx-16 lg:-mx-32">
<div className="relative h-[60vh] mb-12">
<Image
src={author.picture}
alt={author.name}
width={50}
height={50}
className="rounded-full mr-3"
src={blog.coverImage}
alt={blog.title}
fill
priority
className="object-cover brightness-50"
/>
<div className="flex flex-col items-start">
<span className="text-gray-700">{author.name}</span>
<div className="flex items-center">
<span className="text-gray-500">{formattedDate}</span>
<span className="mx-2 text-gray-400">•</span>
<span className="text-gray-500">{readingTime} min read</span>
<div className="absolute inset-0 flex flex-col items-center justify-center px-4">
<div className="container mx-auto max-w-4xl">
<div className="mb-3">
<span className="inline-block bg-purple-50 text-purple-700 px-4 py-1 rounded-full text-sm">
{blog.tags[0]}
</span>
</div>
<h1 className="text-3xl md:text-5xl font-bold mb-6 text-white leading-tight">
{blog.title}
</h1>
<p className="text-gray-200 mb-8 text-md mx-auto max-w-2xl">
{blog.excerpt}
</p>
<div className="flex items-center justify-center">
<Image
src={author.picture}
alt={author.name}
width={50}
height={50}
className="rounded-full mr-3 border-2 border-white"
/>
<div className="flex flex-col items-start">
<span className="text-white">{author.name}</span>
<div className="flex items-center text-gray-200">
<span>{formattedDate}</span>
<span className="mx-2">•</span>
<span>{readingTime} min read</span>
</div>
</div>
</div>
</div>
</div>
</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.

medium

The new header design, which overlays the blog metadata on the cover image using absolute positioning and negative margins, creates a visually appealing effect. However, this approach significantly increases the complexity of the header structure compared to the previous layout. While effective for the current design, complex positioning can sometimes make future layout adjustments or responsiveness tweaks more challenging.

Have you considered the long-term maintainability of this complex header structure? Are there alternative approaches that might achieve a similar visual outcome with potentially simpler CSS/Tailwind classes?

Comment on lines +73 to 104
<div className="absolute inset-0 flex flex-col items-center justify-center px-4">
<div className="container mx-auto max-w-4xl">
<div className="mb-3">
<span className="inline-block bg-purple-50 text-purple-700 px-4 py-1 rounded-full text-sm">
{blog.tags[0]}
</span>
</div>
<h1 className="text-3xl md:text-5xl font-bold mb-6 text-white leading-tight">
{blog.title}
</h1>
<p className="text-gray-200 mb-8 text-md mx-auto max-w-2xl">
{blog.excerpt}
</p>
<div className="flex items-center justify-center">
<Image
src={author.picture}
alt={author.name}
width={50}
height={50}
className="rounded-full mr-3 border-2 border-white"
/>
<div className="flex flex-col items-start">
<span className="text-white">{author.name}</span>
<div className="flex items-center text-gray-200">
<span>{formattedDate}</span>
<span className="mx-2">•</span>
<span>{readingTime} min read</span>
</div>
</div>
</div>
</div>
</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.

medium

The text elements (title, excerpt, author info) are now positioned over the cover image with a brightness-50 filter. While text-white and text-gray-200 are used, ensuring sufficient contrast between the text and the potentially varied background of the image is crucial for accessibility, especially for users with visual impairments.

Have you tested the color contrast of the overlaid text against different cover images to ensure it meets accessibility standards (e.g., WCAG AA or AAA)? Using tools like browser developer tools or online contrast checkers can help verify this.

{blog.excerpt}
</p>
<div className="flex items-center justify-center">
<header className="relative text-center mb-10 -mx-4 sm:-mx-8 md:-mx-16 lg:-mx-32">
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The use of negative horizontal margins (-mx-4 sm:-mx-8 md:-mx-16 lg:-mx-32) on the header pushes it outside the main container's padding to achieve a wider visual span for the image. While this is a common technique for full-bleed sections, combining it with the absolute positioning of content inside the image container requires careful testing.

Have you thoroughly tested this layout across a range of device widths and screen sizes to ensure there are no horizontal scrollbars or unexpected layout shifts caused by the negative margins or the interaction with the absolute positioning?

@UmairJibran UmairJibran merged commit df528dc into master May 16, 2025
4 checks passed
@UmairJibran UmairJibran deleted the blog-redesign branch May 16, 2025 16:43
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.

1 participant