Mateusz Hibner

Mateusz Hibner

BeEpBoOp โ€” PC compatibility assistant built for the Megekko Hackathon.

BeEpBoOp โ€” PC-Building Helper

Megekko Hackathon โ€ข React/Next.js ยท FastAPI ยท PostgreSQL

TL;DR

BeEpBoOp is a full-stack assistant that helps you assemble a compatible PC. The React/Next.js frontend lets you pick parts, while a FastAPI backend with a parts database returns compatible CPUs, GPUs, motherboards, RAM, storage, cases, PSUs, and cooling options for the build in real time. We shipped it during the Megekko Hackathon, took first place, and split a EUR 1,000 prize. GitHub repo.

Megekko front 1 โ€” BeEpBoOp landing view

Backend

The backend (FastAPI + SQLAlchemy) exposes POST endpoints per component type (e.g., /cpu, /mb, /psu) that accept the current configuration and respond with compatible parts. Pydantic models describe the payloads, CORS is configured for local dev, and the stack uses orchestrated data models (CPU, Motherboard, GPU, etc.) backed by PostgreSQL.

Megekko PC Builder backend data flow
Megekko PC Builder backend view highlighting FastAPI data flow between endpoints.

Frontend

The Next.js app defines component categories in lib/types.ts and renders pickers in app/page.tsx. Selecting a slot sends the current build to fetchCompatible in lib/api.ts, which POSTs to the FastAPI endpoint defined by the component id (CPU, MB, GPU, RAM, storage, cooling, case, PSU). Results are rendered as suggestions the user can accept to update the build.

Megekko PC Builder frontend interactions
Megekko PC Builder frontend flow showing interactive component pickers and suggestions.

Data pipeline

Custom scrapers populate the parts database from Megekko listings. ETL notebooks clean the data, deduplicate specs, and seed the database so compatibility queries can run quickly during hackathon demos.