The global network for top open-source developers β discover, connect, and celebrate the people behind the code
26,000+ developers Β· ranked by stars, commits, repo reach & StackOverflow reputation Β· searchable by skill, location & language
- Interactive 3D Globe β Explore developers pinned to their real-world locations using Three.js
- AI-Powered Search β Hybrid + vector search via Azure Cosmos DB (e.g. "AI & deep learning", "full stack JS dev")
- Composite Scoring β Each developer scored 0β100 across 6 dimensions
- Leaderboard β Filter by country, language, or sort by score/stars/commits
- Developer Profiles β Click any pin to see detailed stats, top repos, and contribution breakdown
- Mobile Responsive β Bottom-sheet filters and full-width search on smaller screens
git clone https://github.com/sajeetharan/devglobe.git
cd devglobe
npm install
npm run dev
# Open http://localhost:5173The app runs with sample data out of the box β no API keys needed for local development.
Want to test with a real database locally? Use the Azure Cosmos DB Emulator β it runs locally with no Azure subscription required. Set
COSMOS_ENDPOINT=https://localhost:8081and the emulator's key in your.env.
| Layer | Technology |
|---|---|
| Frontend | React 19, Three.js (react-globe.gl), Vite |
| Search | Azure Cosmos DB (vector + hybrid search) |
| API | Vercel Serverless Functions |
| Hosting | Vercel |
| Data Pipeline | Node.js scripts (GitHub GraphQL, StackOverflow API, geocoding) |
| Dimension | Weight | Source |
|---|---|---|
| GitHub Stars | 25% | Total stars across repos |
| GitHub Commits | 25% | Yearly commit activity |
| Repo Reach | 20% | Forks + watchers |
| SO Reputation | 15% | StackOverflow reputation |
| SO Engagement | 10% | Answer acceptance Γ count |
| Community | 5% | Followers + badges |
All dimensions are log-normalized to prevent outlier domination.
Requires API keys β copy .env.example to .env and fill in your tokens.
npm run fetch-github # Fetch top devs from GitHub GraphQL
npm run fetch-stackoverflow # Enrich with StackOverflow reputation
npm run geocode # Convert locations to lat/lng
npm run build-data # Run full pipeline
npm run upload-cosmos # Upload to Azure Cosmos DBβββ index.html # Entry HTML
βββ src/
β βββ main.jsx # App bootstrap + Vercel Analytics
β βββ App.jsx # Root component, data loading
β βββ components/
β β βββ Globe.jsx # 3D globe (react-globe.gl)
β β βββ Leaderboard.jsx # Ranked sidebar with filters
β β βββ SearchBar.jsx # Hybrid/vector search input
β β βββ DetailPanel.jsx # Developer detail card
β β βββ Header.jsx # Top bar with branding
β β βββ LoadingOverlay.jsx # Loading state
β βββ utils/
β βββ scoring.js # Composite scoring algorithm
β βββ format.js # Number formatting helpers
βββ api/
β βββ developers.js # List all developers
β βββ developer.js # Single developer lookup
β βββ search.js # Cosmos DB vector/hybrid search
βββ scripts/ # Data pipeline scripts
βββ styles/main.css # Dark theme styles
βββ data/
βββ developers-sample.json # Sample data for local dev
npx vercelRequired environment variables:
| Variable | Purpose |
|---|---|
COSMOS_ENDPOINT |
Azure Cosmos DB endpoint |
COSMOS_KEY |
Azure Cosmos DB key |
COSMOS_DATABASE |
Database name |
COSMOS_CONTAINER |
Container name |
Contributions are welcome! See CONTRIBUTING.md for setup instructions and areas where help is needed.
MIT β see LICENSE for details.
β Star this repo if you find it useful!
Built with β€οΈ by @sajeetharan