feat: implement goal setting and progress tracking system (#2729) - #3212
feat: implement goal setting and progress tracking system (#2729)#3212geethika-sandireddy wants to merge 9 commits into
Conversation
This route provides suggestions for user goals based on their activity metrics and existing goals. It checks user authentication, retrieves metrics, and generates suggestions if certain goals are not already set.
Implement GET endpoint to fetch user achievements and badges based on goal completion.
|
@geethika-sandireddy is attempting to deploy a commit to the legitox's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Thanks for your first PR on DevTrack! 🎉 A maintainer will review it within 48 hours. While you wait:
If you find DevTrack useful, a ⭐ star on the repo is always appreciated — it helps the project grow and attract more contributors! |
GSSoC Label Checklist 🏷️@Priyanshu-byte-coder — please apply the appropriate labels before merging: Difficulty (pick one):
Quality (optional):
Validation (required to score):
|
|
Hi! I have starred the repo from the same account used for this PR. Could someone please approve/re-run the workflow checks? Thanks! |
Summary
Implemented a comprehensive Goal Setting and Progress Tracking system that allows users to create, manage, and monitor their productivity goals with auto-sync from GitHub, visual progress indicators, and achievement tracking.
Closes #2729
Type of Change
What Changed
Components Added
src/components/GoalTracker.tsx- Main goal tracker widget with create/edit/delete functionality, progress bars, confetti animations, and goal sharingsrc/components/GoalHistory.tsx- Past goals history display with completion/missed status trackingAPI Endpoints Added
src/app/api/goals/route.ts- GET (fetch all goals), POST (create new goal)src/app/api/goals/[id]/route.ts- PATCH (update goal), DELETE (remove goal)src/app/api/goals/sync/route.ts- POST (sync goals from GitHub API)src/app/api/goals/history/route.ts- GET (fetch goal history)src/app/api/goals/suggestions/route.ts- GET (suggested goals based on activity)src/app/api/goals/achievements/route.ts- GET (achievement badges)src/app/api/goals/notify/route.ts- POST (send notifications)Features Implemented
How to Test
Create a Goal:
Test Auto-Sync (Commits):
Test Goal Completion:
Test Recurrence:
Test Goal Sharing:
Test Responsiveness:
Test Error Handling:
Expected result:
Checklist
console.log, debug code, or commented-out blocksnpm run lintpasses locallynpm run type-check)Accessibility (UI changes only)
Additional Context
Design Decisions
Follow-up Issues (if any)