Skip to content

fixed #1597 Refactor blog filtering logic for maintainability#1599

Merged
sanjay-kv merged 1 commit into
recodehive:mainfrom
MiniduOshan:issue-1597-refactor-blog-filtering
May 20, 2026
Merged

fixed #1597 Refactor blog filtering logic for maintainability#1599
sanjay-kv merged 1 commit into
recodehive:mainfrom
MiniduOshan:issue-1597-refactor-blog-filtering

Conversation

@MiniduOshan
Copy link
Copy Markdown
Contributor

Validation: Type-checked the touched files and confirmed there are no errors.

Description

Refactored the blogs page filtering logic to improve maintainability and scalability. The filtering logic was extracted into a reusable utility function, and the blogs page now derives filtered results with useMemo instead of storing duplicated filtered state in useEffect. This keeps the component simpler and makes it easier to extend search and filter features in the future.

Fixes #1597

Type of Change

  • New feature (e.g., new page, component, or functionality)
  • Bug fix (non-breaking change that fixes an issue)
  • UI/UX improvement (design, layout, or styling updates)
  • Performance optimization (e.g., code splitting, caching)
  • Documentation update (README, contribution guidelines, etc.)
  • Other (please specify):

Changes Made

  • Extracted blog search filtering into a reusable utility function.
  • Replaced useEffect-driven filtered state with derived state using useMemo.
  • Kept the blogs page logic easier to read and simpler to extend for future filters.

Dependencies

  • No new dependencies were added.
  • No version or configuration updates were required.

Checklist

  • My code follows the style guidelines of this project.
  • I have tested my changes across major browsers and devices
  • My changes do not generate new console warnings or errors.
  • I ran npm run build and attached screenshot(s) in this PR.
  • This is already assigned Issue to me, not an unassigned issue.

Refactored the blogs page filtering logic to improve maintainability and scalability. The filtering logic was extracted into a reusable utility function, and the blogs page now derives filtered results with [useMemo] instead of storing duplicated filtered state in [useEffect]. This keeps the component simpler and makes it easier to extend search and filter features in the future.

Validation: type-checked the touched files and confirmed there are no errors.
@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 20, 2026

@MiniduOshan is attempting to deploy a commit to the recode Team on Vercel.

A member of the Team first needs to authorize it.

@github-actions github-actions Bot added in-review The current changes are in review and would need approval and testing before merging level 1 10 points labels May 20, 2026
@github-actions
Copy link
Copy Markdown

Thank you for submitting your pull request! 🙌 We'll review it as soon as possible. The estimated time for response is 5–8 hrs.

In the meantime, please provide all necessary screenshots and make sure you run - npm build run , command and provide a screenshot, a video recording, or an image of the update you made below, which helps speed up the review and assignment. If you have questions, reach out to LinkedIn. Your contributions are highly appreciated!😊

Note: I maintain the repo issue every day twice at 8:00 AM IST and 9:00 PM IST. If your PR goes stale for more than one day, you can tag and comment on this same issue by tagging @sanjay-kv.

We are here to help you on this journey of open source. Consistent 20 contributions are eligible for sponsorship 💰

🎁 check our list of amazing people we sponsored so far: GitHub Sponsorship. ✨

📚Your perks for contribution to this community 👇🏻

  1. Get free Consultation use code recode50 to get free: Mentorship for free.

  2. Get the Ebook for free use code recode at checkout: Data Science cheatsheet for Beginners.

  3. Check out this weekly Newsletter: Sanjay's Newsletter.

If there are any specific instructions or feedback regarding your PR, we'll provide them here. Thanks again for your contribution! 😊

@github-actions github-actions Bot added the recode this is label for leaderboard label May 20, 2026
@github-actions github-actions Bot added this to the recode:launch 3.0 milestone May 20, 2026
@github-actions github-actions Bot added Enhacement gssoc26 label gssoc:approved gssoc label type:refractor gssoc label 10pts labels May 20, 2026
@github-actions
Copy link
Copy Markdown

✅ Synchronized metadata from Issue #1597:

  • Labels: recode, Enhacement, gssoc:approved, type:refractor
  • Milestone: recode:launch 3.0

@Adez017 Adez017 moved this to In Progress in @recode-web May 20, 2026
@Adez017 Adez017 moved this to Q2 2026 – March-June in Recode Public Roadmap May 20, 2026
@Adez017 Adez017 moved this to Q2 2026 – March-June in Recode Public Roadmap May 20, 2026
@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 20, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
recode-website Ready Ready Preview, Comment May 20, 2026 12:47pm

@sanjay-kv sanjay-kv merged commit 4ac8fbb into recodehive:main May 20, 2026
8 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in @recode-web May 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhacement gssoc26 label gssoc:approved gssoc label in-review The current changes are in review and would need approval and testing before merging level 1 10 points recode this is label for leaderboard type:refractor gssoc label 10pts

Projects

Status: Done
Status: Q2 2026 – March-June

Development

Successfully merging this pull request may close these issues.

🐞Refactor blog filtering logic for maintainability

3 participants