Projects

GitHub Gist Manager
This app lets users authenticate with GitHub, search and view gists, and manage favorites with persistent storage. It focuses on secure OAuth flow handling, rate-safe API integration, and a clean interface for browsing and organizing gists. The backend was built to support future collaboration features and scalable data storage.
The problem this solves
GitHub's native Gist interface is functional but minimal — no way to tag, search across all your gists by content, or store personal notes. Developers who use Gists heavily end up with hundreds of snippets they can't find when they need them. This project built a proper management layer on top of the GitHub API.
What it does
- GitHub OAuth for secure, scope-limited authentication
- Search across public gists by filename and description
- Favorites system with MongoDB-backed persistence
- User comments on individual gists
- Rate-limit-aware GitHub API integration
- Clean, keyboard-navigable gist browser UI
Hard parts and how I solved them
GitHub's API rate limits are strict — especially for unauthenticated requests. Designing around this without degrading the user experience required careful request batching and caching strategy. The OAuth flow also had some edge cases around token refresh and scope management that took time to handle correctly. On the frontend, keeping the gist list responsive while fetching file contents lazily was a UX balance that required a few iterations to get right.
Tech stack
Outcome
A fully working gist manager that feels meaningfully better than the GitHub UI for power users. OAuth works reliably, favorites persist across sessions, and the search is fast enough that it doesn't feel like an API call is happening in the background.
My role
Full-stack — OAuth flow, GitHub API integration, MongoDB schema, REST endpoints, and the entire Next.js frontend. I also designed the UX from scratch.