How aballal-source/bughunt works
BugHunt is a crowdsourced game-bug reporting platform. Players browse reports, submit bugs, and upvote; an admin can triage report status, while users can inspect SQL-backed analytics. The React app calls a FastAPI REST API, whose feature routers use a shared PostgreSQL connection helper. The README documents game management and analytics capabilities beyond the sampled source; their router paths are present in the tree, but their internal query behavior was not inspected.
Main entry points: api.js API client · App.jsx App shell · BugForm.jsx Bug submission · database.py DB connection
Components 15
React web app
- App shell
frontend/src/App.jsx - Bug submission
frontend/src/components/BugForm.jsx - Bug list
frontend/src/components/BugList.jsx - Bug card
frontend/src/components/BugCard.jsx - Admin triage
frontend/src/components/AdminPanel.jsx - Analytics dashboard
frontend/src/components/AnalyticsDashboard.jsx - API client
frontend/src/services/api.js
REST API
- FastAPI app
backend/main.py - Bug reports
backend/routers/bugs.py - Game catalog
backend/routers/games.py - Analytics queries
backend/routers/analytics.py - DB connection
backend/database.py
PostgreSQL data
- PostgreSQL
Other components
- Player
- Administrator
Connections 25
- Player → Bug submission: submits report
- Player → Bug list: browses reports
- Player → Bug card: upvotes report
- Administrator → Admin triage: triages reports
- App shell → Bug submission: renders
- App shell → Bug list: renders
- App shell → Admin triage: renders
- App shell → Analytics dashboard: renders
- App shell → API client: loads reports
- Bug submission → API client: loads games
- Bug submission → API client: submits bug
- Bug list → Bug card: renders
- Bug card → API client: upvotes bug
- Admin triage → API client: updates status
- Analytics dashboard → API client: loads analytics
- API client → Bug reports: HTTP requests
- API client → Game catalog: HTTP requests
- API client → Analytics queries: HTTP requests
- FastAPI app → Bug reports: mounts routes
- FastAPI app → Game catalog: mounts routes
- FastAPI app → Analytics queries: mounts routes
- Bug reports → DB connection: opens connection
- Game catalog → DB connection: opens connection
- Analytics queries → DB connection: opens connection
- DB connection → PostgreSQL: connects