Inspiration
The project was born from the common anxiety developers feel when looking at their own portfolios: "Am I actually improving, or am I falling behind?" By looking at the vast amount of data available via the GitHub ecosystem, we wanted to create a "reality check" tool. It bridges the gap between raw activity data and meaningful career growth by comparing a user's actual output against the expectations for their specific academic or professional level.
What it does
AmICooked is a diagnostic tool for developers that analyzes GitHub activity to provide a technical "health check".
Secure Integration: Users sign in via GitHub OAuth to provide access to their contribution data.
Contextual Benchmarking: It collects user-specific data—such as education level and years of experience—to ensure comparisons are fair and relevant.
Deep Activity Analysis: The system uses the GitHub GraphQL API to pull commit history, pull requests, and repository data over a specific timeframe.
Skill Profiling: It categorizes languages into domains like Frontend or Backend and calculates usage percentages to identify a user's primary technical identity.
AI Recommendations: The tool identifies skill gaps and generates actionable tasks, such as specific project ideas or new technologies to learn, to help the user reach the next level.
How we built it
The technical stack was designed for data precision and secure user handling:
Authentication: Built using OAuth 2.0 to handle GitHub credentials and secure session tokens.
Data Retrieval: Leveraged the GitHub GraphQL API (v4) for efficient, targeted queries of user activity and repository metadata.
Backend Logic: Implemented a categorization engine that maps programming languages to specific roles (Frontend, Backend, etc.) and calculates competency rankings.
AI Integration: Developed a benchmarking system that compares user profiles against AI-generated baselines for various experience levels.
Challenges we ran into
One of the primary hurdles was the complexity of the GitHub GraphQL API; crafting precise queries to retrieve disparate data points like pull requests and specific language weights required significant trial and error. Additionally, creating a "fair" benchmarking system proved difficult, as "average" coding activity varies wildly between a first-year student and a seasoned professional, necessitating the "User Context Input" feature to ground the AI's suggestions.
Accomplishments that we're proud of
We successfully built a pipeline that transforms abstract GitHub statistics into a structured Skill Profile. Being able to accurately identify whether a user is leaning too heavily into one domain (like Frontend) and providing a logical path toward becoming a more well-rounded developer is a core achievement of the platform.
What we learned
This project highlighted the importance of context in data. We learned that raw commit counts mean very little without knowing the user's background. From a technical standpoint, we gained deep experience in managing OAuth flows and navigating the complexities of GraphQL schemas compared to traditional REST APIs.
What's next for AmICooked
The next phase for AmICooked involves expanding the Actionable Suggestions engine to include direct links to learning resources or open-source issues that match the user's identified gaps. We also plan to refine the Benchmarking system by aggregating anonymous data from other users to create even more accurate, community-driven "baselines" for success.
Built With
- firebase
- github-graphql-api
- javascript
- openrouter-ai
- react
- shadcn-ui
- tailwind-css
- vite
Log in or sign up for Devpost to join the conversation.