The cleanest hackathon aggregator on the internet. It's the only directory with a fully self-running AI pipeline — it scrapes 11+ sources every run, normalizes messy data, auto-assigns prestige tiers, enriches stub listings using Mistral AI, and sweeps out expired events. No ads, no noise, no manual curation. Switch between global prestige events and local India hackathons in one click. Built on Next.js 14 with a Supabase backend, deployed on Vercel, and runs a Python pipeline that just works.
Finding high-quality hackathons is incredibly tedious. You have to scour Devfolio, MLH, HackerEarth, Dorahacks, and endless Twitter threads just to find one that matches your timeline.
1ph solves this by centralizing everything.
- Zero Noise: No ads, no sponsored bloat, no clutter. Just pure data.
- AI-Enriched: Our pipeline uses Mistral AI to extract real deadlines, prize pools, and descriptions from otherwise vague listings.
- Prestige Sorted: We automatically identify Tier 1 global hackathons and push them to the top.
- Insanely Fast: Built with Next.js 14 and static generation for near-instant load times.
- Deep Filtering: Filter by theme (AI, Web3, Fintech, etc.), mode (Online/Offline), entry fee, and team size.
- Prestige Tiers: Events are automatically assigned a prestige tier (T1, T2, T3) via our custom Tier Engine.
- Status Tracking: Instantly see what's Open, Closing Soon, or recently Closed.
- Global + Local: Seamlessly switch between global prestige events and region-specific hackathons (e.g., India).
- Responsive UI: A beautiful, dark-mode first design crafted for developers.
The 1ph ecosystem is broken into three distinct layers:
- Python AI Pipeline: A highly concurrent scraping engine (
Playwright,HTTPX) that pulls from 11+ sources, normalizes data, evaluates prestige, and uses Mistral AI to enrich metadata. - Supabase PostgreSQL: A robust relational database storing all normalized entities.
- Next.js Web App: A lightning-fast frontend leveraging Prisma ORM to serve data to end-users.
👉 View the full System Architecture Diagrams & Documentation
| Domain | Technology |
|---|---|
| Frontend | Next.js 14 (App Router), React, Tailwind CSS |
| Backend/DB | Supabase (PostgreSQL), Prisma ORM |
| Pipeline | Python 3, Playwright, HTTPX, BeautifulSoup4 |
| AI/ML | Mistral AI API |
| Deployment | Vercel (Web), GitHub Actions (Pipeline) |
git clone https://github.com/h55n/1ph.git
cd 1ph
npm installCopy the environment variables and start the Next.js development server:
cp .env.example apps/web/.env.local
# Add your NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY to .env.local
npm run devThe app will be available at http://localhost:3000.
To run the data collection pipeline locally:
cd pipeline
pip install -r requirements.txt
cp .env.example .env
# Add your DATABASE_URL and MISTRAL_API_KEY
python run.pyWe welcome contributions from the community! Whether you want to add a new hackathon source to the Python pipeline or improve the frontend UI, your help is appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
