https://github.com/leontiad/goring
A platform to analyze github accounts and score developers
https://github.com/leontiad/goring
ai github hr ml recruitment scoreboard
Last synced: 5 months ago
JSON representation
A platform to analyze github accounts and score developers
- Host: GitHub
- URL: https://github.com/leontiad/goring
- Owner: leontiad
- License: mit
- Created: 2025-05-16T00:01:45.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-24T04:16:11.000Z (12 months ago)
- Last Synced: 2025-06-24T04:27:02.846Z (12 months ago)
- Topics: ai, github, hr, ml, recruitment, scoreboard
- Language: Svelte
- Homepage: https://goring.vercel.app/
- Size: 61.1 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/leontiad/goring/actions/workflows/deploy.yml)
# GitHub Score API
A comprehensive API for analyzing and scoring GitHub users based on their contributions, repository significance, and community engagement.
## Project Structure
```
.
├── src/
│ ├── api/
│ │ └── main.rs # Main API server implementation
│ ├── db/
│ │ ├── models.rs # Database models for caching
│ │ ├── db.rs # Database connection and operations
│ │ └── mod.rs # Database module exports
│ ├── scoring/
│ │ ├── github_score.rs # GitHub scoring algorithm implementation
│ │ └── mod.rs # Scoring module exports
│ └── lib.rs # Library exports and shared types
├── data/ # SQLite database storage
│ └── github_cache.db # Cached GitHub data
├── Cargo.toml # Rust dependencies and project configuration
└── README.md # Project documentation
```
## Features
- Comprehensive GitHub user analysis
- Detailed scoring breakdown
- RESTful API endpoints
## API Endpoints
- `POST /api/score` - Calculate GitHub user score
- `GET /api/health` - Health check endpoint
## Database Schema
### Cached Users Table
- username (TEXT, PRIMARY KEY)
- user_data (TEXT)
- repositories (TEXT)
- events (TEXT)
- pull_requests (TEXT)
- last_updated (TEXT)
### Cached Scores Table
- username (TEXT, PRIMARY KEY)
- score (TEXT)
- rating (TEXT)
- stats (TEXT)
- activity (TEXT)
- languages (TEXT)
- last_updated (TEXT)
## Development
The project uses SQLite for caching GitHub API responses. The database file is stored in the `data` directory and is automatically created when the server starts.
## Getting Started
1. Clone the repository:
```bash
git clone https://github.com/yourusername/github-score.git
cd github-score
```
2. Install dependencies:
```bash
npm install
```
3. Start the development server:
```bash
npm run dev
```
4. Start backend server
```
cargo run
```
5. Open [http://localhost:5173](http://localhost:5173) in your browser.
## Deployment
The project is split into two parts:
1. Frontend (SvelteKit) - Deployed on Netlify: `.env.var.FRONTEND_URL` your Vite frontend domain
2. Backend (Rust) - Deployed on Shuttle.dev: `.env.var.VITE_API_URL` your rust/shuttle backend domain