Skip to content

🚀 Feature: Add Bookmarks / Favourites for Frequently Tracked GitHub Profiles #546

@SairajTripathy-0077

Description

@SairajTripathy-0077

🔖 Feature description

🚀 [GSSoC'26] Feature: Add Bookmarks / Favourites for Frequently Tracked GitHub Profiles

Issue Type

Enhancement / Feature Request

Description

Currently, users can search and track GitHub profiles, but there is no option to save profiles for quick access later.

This feature introduces a Bookmarks / Favourites system where authenticated users can save GitHub profiles they frequently track.

Since the project already uses authentication + MongoDB, this feature integrates naturally into the existing architecture.


Proposed Features

⭐ Bookmark GitHub Profiles

Users should be able to:

  • Save a GitHub profile to bookmarks
  • Remove saved profiles
  • Prevent duplicate bookmarks
  • Persist data in MongoDB
  • View all saved profiles from a dedicated page

Expected Workflow

Search Profile
      ↓
Open GitHub Tracker Page
      ↓
Click ⭐ Bookmark
      ↓
Profile gets saved
      ↓
Access later from Bookmarks page

Suggested Database Structure

Option 1

{
  userId: ObjectId,
  bookmarks: [
    {
      githubUsername: String,
      avatarUrl: String,
      savedAt: Date
    }
  ]
}

Option 2

{
  userId: ObjectId,
  githubUsername: String,
  createdAt: Date
}

UI Requirements

  • Add a ⭐ Bookmark/Favourite button
  • Visual state changes:
    • Empty star → Not Saved
    • Filled star → Saved
  • Create dedicated page:
/bookmarks

Optional additions:

  • Recently saved section
  • Bookmark counter
  • Quick access widget

API Requirements

Add Bookmark

POST /api/bookmarks

Request Body:

{
  "githubUsername": "octocat"
}

Remove Bookmark

DELETE /api/bookmarks/:username

Fetch Bookmarks

GET /api/bookmarks

Acceptance Criteria

  • Only authenticated users can access bookmarks
  • Users can add bookmarks
  • Users can remove bookmarks
  • Duplicate entries are blocked
  • MongoDB persistence added
  • Dedicated bookmarks page implemented
  • Loading and error states handled
  • Bookmark state updates dynamically in UI

Tech Stack Impact

  • Frontend UI updates
  • Authentication integration
  • MongoDB schema update
  • API routes
  • State management

Labels Suggested

GSSoC'26
enhancement
feature
frontend
backend
mongodb
good first issue


Difficulty Level

🟢 Beginner to Intermediate

Suitable for GSSoC contributors working with:

  • React / Next.js
  • MongoDB
  • Authentication flows
  • API integration
  • UI state management

🎤 Screenshot

No response

🔄️ Additional Information

No response

Metadata

Metadata

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions