-
Notifications
You must be signed in to change notification settings - Fork 5
Claude/resolve GitHub issues #128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Claude/resolve GitHub issues #128
Conversation
Implement GitHub issue HappyHackingSpace#100 with the following features: - Extended preferences store to support favorite users - Created new favorites store for tracking repository and user metrics - Added API endpoints for fetching repository and user metrics - Built expandable FavoritesList component with collapsible UI - Integrated metrics display for repositories (stars, issues, activity) - Integrated metrics display for users (activity, languages, repos) - All metrics updated within 24-hour period as specified - Component added to dashboard with proper loading and error states Technical changes: - src/stores/preferences.ts: Added favoriteUsers array and toggleFavoriteUser action - src/stores/favorites.ts: New store for managing metrics data with caching - src/stores/index.ts: Added favorites store to hydration and exports - src/app/api/favorites/repo/route.ts: API endpoint for repository metrics - src/app/api/favorites/user/route.ts: API endpoint for user metrics - src/components/widget/FavoritesList.tsx: Expandable list component with live metrics - src/app/dashboard/page.tsx: Integrated FavoritesList into dashboard All code passes TypeScript checks and ESLint validation.
…oard-01SKTUW6fhsy4NBmdZLedZXH feat: add expandable favorites list with live metrics to dashboard
- Changed Favorites from "Coming Soon" to active menu item - Added link to dashboard with #favorites anchor - Added id="favorites" to FavoritesList Card for proper navigation - Menu item highlights when on dashboard page
…oard-01SKTUW6fhsy4NBmdZLedZXH feat: enable favorites menu item in sidebar
Moved favorites functionality from dashboard to a dedicated /favorites page. Changes: - Removed FavoritesList from dashboard (dashboard is now kanban-only) - Created new /favorites page with header and manage button - Updated sidebar to link to /favorites instead of dashboard anchor - Added /favorites to protected routes in middleware - Added /api/favorites to protected API routes - Removed id attributes from FavoritesList cards (no longer needed) - Updated sidebar accordion behavior to close when navigating to favorites The favorites page now provides a dedicated space for future enhancements and better organization of favorite repositories and users.
…oard-01SKTUW6fhsy4NBmdZLedZXH refactor: move favorites to dedicated page
Enhanced preferences store and added favorites management UI: **Store Enhancements (src/stores/preferences.ts):** - Added FavoriteCategory interface with id, name, and color - Added FavoriteRepoMetadata and FavoriteUserMetadata interfaces - Store now tracks dateAdded, categoryId, and notes for each favorite - Added category management methods (add, update, delete) - Added methods to set category and notes for repos/users - togglePinnedRepo/toggleFavoriteUser now create/remove metadata automatically - Included 3 default categories: Work, Learning, Inspiration **Settings Tab (src/components/settings/FavoritesSettings.tsx):** - Comprehensive favorites management interface in Settings page - Category management: create, edit, delete categories with color picker - 8 color options for categories (blue, green, yellow, red, purple, pink, indigo, teal) - Repository management: add/remove repos, assign to categories - User management: add/remove users, assign to categories - Inline category assignment dropdowns - Category badge display with proper colors - Dialog-based add/edit interfaces for all operations - Delete category automatically unassigns from all favorites **Settings Page (src/app/settings/page.tsx):** - Added new "Favorites" tab alongside GitHub and Appearance - Tab uses Star icon for visual consistency This is part 1 of the comprehensive favorites system. Remaining features to implement: search integration, filters/sorting, activity feed, and quick actions on favorites page.
Add advanced favorites features: - Search integration: star buttons on search results for quick add/remove - Filters and sorting: category filters and multiple sort options for repos/users - Activity feed: component showing recent activity from favorites - Quick actions: open on GitHub, copy clone URL, copy profile URL Changes: - Add favorite/unfavorite buttons to search results (repos and users) - Add filter by category and sort controls to FavoritesList - Implement filtering and sorting logic with useMemo - Add quick action buttons (external link, copy URL, copy clone URL) - Create ActivityFeed component with mock activity data - Update favorites page layout with 2/3 grid for list and 1/3 for feed
…oard-01SKTUW6fhsy4NBmdZLedZXH Claude/GitHub monitoring dashboard
Implements issue HappyHackingSpace#103 - enables direct navigation from favorites to analysis. Changes: - Add BarChart3 icon button to pinned repository cards that navigates to /search?repo={fullName} - Add BarChart3 icon button to favorite user cards that navigates to /search?user={username} - Use Next.js router.push for client-side navigation - Add tooltips for better UX ("View repository analysis" / "View user analytics") - Properly encode URL parameters with encodeURIComponent The new analysis button appears as the first action button in each favorite card, providing seamless one-click access to detailed analytics for both repositories and users from the Favorites section. Resolves: HappyHackingSpace#103
|
Caution Review failedThe pull request is closed. WalkthroughThis PR introduces a Favorites feature that enables users to bookmark GitHub repositories and developers, fetches associated metrics (stars, activity, issues, language) via dedicated API endpoints, stores preferences and metrics data via Zustand stores with caching, and provides UI components for browsing, managing, and categorizing favorites across a new Favorites page and settings dashboard. Changes
Sequence DiagramsequenceDiagram
participant User
participant Browser
participant FavoritesPage
participant FavoritesList
participant API as API Route
participant GitHub as GitHub API
participant Store as Favorites Store
User->>Browser: Navigate to /favorites
Browser->>FavoritesPage: Render page
FavoritesPage->>FavoritesList: Mount component
FavoritesList->>Store: Read pinnedRepos, favoriteUsers
FavoritesList->>Store: Check cache (lastFetchedAt)
alt Cache expired or missing
FavoritesList->>API: fetchRepoMetrics(repo)
API->>GitHub: GET /repos/{owner}/{repo}
API->>GitHub: GET /repos/{owner}/{repo}/issues?state=open&since=24h
GitHub-->>API: Return repo data + issues
API-->>FavoritesList: Return RepoMetrics
FavoritesList->>Store: Update repoMetrics, loading, lastFetchedAt
else Cache valid
Store-->>FavoritesList: Return cached metrics
end
FavoritesList->>Browser: Render cards (stars, activity, language, issues)
User->>Browser: Click "Add to Favorites"
Browser->>Store: toggleFavoriteUser(username)
Store->>Store: Update favoriteUsers, persist
FavoritesList->>Browser: Re-render with updated state
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60–75 minutes Areas requiring extra attention:
Possibly related PRs
Poem
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (13)
Tip 📝 Customizable high-level summaries are now available in beta!You can now customize how CodeRabbit generates the high-level summary in your pull requests — including its content, structure, tone, and formatting.
Example instruction:
Note: This feature is currently in beta for Pro-tier users, and pricing will be announced later. 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. Comment |
Summary by CodeRabbit
Release Notes