parham.
All projects
2025

TalentSonar: Developer-Skill Inference from GitHub

We built a GitHub GraphQL extractor feeding a Gemini LLM that infers technical skills, project archetypes, and seniority signal for any handle.

2 people

Team

GitHub GraphQL

Data source

Gemini API

Inference

Streamlit

Frontend

The problem

GitHub handles are noisy; recruiters need a fast read

Every technical recruiter eventually faces the same problem: a candidate's GitHub profile is the most honest signal of their actual coding, but it's also dozens of repos of varying quality, mixed languages, and side projects vs serious work. Reading a profile cold takes 20 minutes per candidate.

TalentSonar collapses that into a single page: paste a handle, get an LLM-grounded read on technical skills, project archetypes, and seniority signal, with the underlying evidence (repos, commit cadence, languages) visible alongside.

Pipeline

Four steps from a handle to a structured profile

  1. 1Pull

    GitHub GraphQL API extracts public-repo metadata, commit history, and language breakdowns for any handle in a single round trip.

  2. 2Structure

    Raw API output is summarised into compact features: tech stack distribution, project archetypes (CRUD app vs ML pipeline vs library), commit cadence.

  3. 3Infer

    Structured features are passed to Google Gemini with a prompt that asks for skill inference, seniority signal, and stand-out projects, with grounded explanations per claim.

  4. 4Score

    A Streamlit candidate-scoring view combines the LLM read with a configurable test layer. PDF report downloadable for downstream review.

Scope

What ships today vs what's next

  • Live today: GitHub GraphQL extraction, Gemini-driven inference, Streamlit candidate-scoring UI, CSS-only anti-cheat layer, downloadable PDF report.
  • Mock today: the candidate test scoring is a heuristic placeholder; the next iteration swaps it for LLM-evaluated scoring with explanations per question.
  • v2 plan: a Recruiter dashboard with multi-candidate sorting, JD-match scoring, and a link to schedule directly with the strongest match.
Live demo

Try the candidate-scoring app

The Streamlit app lives on HuggingFace Spaces. Paste a GitHub handle to see the GraphQL extraction plus the Gemini-driven skill inference end to end.

Sleeps when idle. First request may take 30 to 60 seconds while the container wakes up. Open in new tab
Tech stack

Frameworks and infrastructure

PythonGitHub GraphQL APIGoogle Gemini APIStreamlitNLPPDF reporting

Source code on GitHub.

The agent at the bottom-right has the full project memory for TalentSonar. Ask it: “Walk me through the LLM prompt design”.