Automated Integrity Verification for Hackathons
.gitcheck is an integrity engine that validates hackathon projects. We cross-reference Devpost claims with GitHub history to confirm correct commit timelines and verify that features actually exist.
Hackathon organizers receive hundreds of submissions but have no way to verify:
- Was this code actually written during the event?
- Do the claimed features exist in the repository?
- Are teams submitting pre-existing projects?
Manual verification is impossible at scale. That's where .gitcheck comes in.
graph TB
subgraph "Frontend - Next.js"
A[Organizer Dashboard]
B[Auth0 Login]
C[Hackathon List View]
D[Project Drill-Down]
end
subgraph "Backend - Python"
E[Devpost Scraper]
F[Feature Investigator Agent]
G[Commit Timeline Validator]
end
subgraph "Data Layer"
H[(PostgreSQL/Supabase)]
I[Prisma ORM]
end
subgraph "External APIs"
J[Devpost]
K[GitHub API]
L[Google Gemini AI]
end
B -->|Organization Filter| C
C -->|Select Hackathon| D
A -->|Scan URL| E
E -->|Extract Projects| J
E -->|Store Data| H
F -->|Analyze Features| K
F -->|AI Verification| L
G -->|Check Commits| K
F -->|Results| H
G -->|Results| H
I -->|Query| H
D -->|Display Results| I
The Python scraper (scrape_hackathon.py) extracts:
- Project titles, taglines, descriptions
- Team members
- Technologies used
- GitHub repository links
- Hackathon schedule (start/end times)
The Feature Investigator Agent (powered by Google Gemini):
- Reads the Devpost description
- Extracts claimed features using AI
- Analyzes the GitHub repository structure
- Cross-references claimed features with actual code
- Assigns a validity score
The Commit Timeline Validator:
- Fetches all commits from the GitHub repository
- Compares commit timestamps with hackathon start/end times
- Flags projects with commits outside the event window
- Detects pre-existing code patterns
- Organizers log in via Auth0
- Each user is assigned an
organization(e.g., "DeltaHacks", "HackTheNorth") - Users only see hackathons belonging to their organization
- Ensures data isolation and multi-tenant support
- Framework: Next.js 15 (App Router)
- Language: TypeScript
- Styling: TailwindCSS (Brutalist Design)
- Auth: Auth0 with organization-based filtering
- Database: Prisma ORM โ PostgreSQL (Supabase)
- Language: Python 3.x
- Scraping: BeautifulSoup4, Requests
- AI: Google Gemini API
- GitHub Integration: GitHub REST API
- Provider: Supabase (PostgreSQL)
- Schema:
hackathons: Stores hackathon metadata (name, dates, org_id)projects: Stores project data, GitHub links, and verification results
- Node.js 18+ and npm
- Python 3.10+
- PostgreSQL database (or Supabase account)
- Auth0 account
- Google Gemini API key
- GitHub Personal Access Token (optional, for higher rate limits)
git clone https://github.com/yourusername/gitcheck.git
cd gitcheck# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Configure environment variables
cp .env.example .env
# Edit .env and add:
# - GOOGLE_API_KEY
# - GITHUB_TOKEN (optional)
# - DATABASE_URLcd hackid-front
# Install dependencies
npm install
# Configure environment variables
cp .env.example .env.local
# Edit .env.local and add:
# - AUTH0_DOMAIN
# - AUTH0_CLIENT_ID
# - AUTH0_CLIENT_SECRET
# - AUTH0_SECRET
# - APP_BASE_URL
# - DATABASE_URL
# Generate Prisma client
npx prisma generate
# Run database migrations
npx prisma db push
# Start development server
npm run devpython scrape_hackathon.py https://deltahacks-12.devpost.com/ --max-projects 50cd hackid-front
npm run devVisit http://localhost:3000 and log in with your Auth0 credentials.
- Go to Auth0 Dashboard โ User Management โ Users
- Select your user
- Edit
app_metadataand add:{ "organization": "your-org-id" } - The
org_idmust match theorg_idin yourhackathonstable
- Devpost scraper with schedule extraction
- Next.js frontend with brutalist design
- Auth0 authentication with domain verification
- Organization-based hackathon filtering
- PostgreSQL database with Prisma ORM
- Drill-down navigation (Hackathons โ Projects)
- Feature Investigator Agent (AI-powered)
- Commit timeline validation
- Automated verdict assignment (Valid/Invalid/Flagged)
- Real-time scanning from frontend
- Batch processing API
- Detailed project analysis reports
- Export results to CSV
- Admin dashboard for multi-org management
This project was built for hackathons, by hackathon organizers. Contributions are welcome!
- Karl Andres - Co-Founder
- Krish Bhagirath - Co-Founder
- Kajuran Elanganathan - Co-Founder
MIT License - Feel free to use this for your hackathon!
Built with inspiration from real hackathon challenges. Tested on DeltaHacks 12 and other major hackathons.
Tagline: Verify the Code. Check the Features. Validate the Win.