🎬 Demo
Interactive walkthrough showing dashboard, teams, players, matches, statistics, stadiums with geospatial queries, and custom query builder.
🎯 Project Overview
Developed a comprehensive Flask web application for exploring, querying, and visualizing AFCON 2025 tournament data using MongoDB. Features interactive dashboards, advanced API endpoints, geospatial queries for nearby stadiums, real-time statistics, and a custom MongoDB query builder accessible via web UI.
🏗️ Architecture Highlights
- Flask backend with PyMongo driver for MongoDB integration
- 20+ RESTful API endpoints with filtering, sorting, and pagination
- Geospatial queries using MongoDB $near for stadium proximity searches
- Responsive HTML templates with Jinja2 and vanilla JavaScript frontend
- Collections: teams (24), players (700+), matches (52), stadiums (6), tournament_stats
- JSON to MongoDB import/export scripts for backup and restore
- Auto-created indexes for query performance optimization
📊 Features & Capabilities
- Interactive dashboard with tournament summary and real-time statistics
- Team standings with points calculation and goal difference
- Top scorers API with customizable limit parameters
- Custom query builder for building and executing MongoDB queries via web UI
- Stadium geolocation with nearby search functionality
- Player filtering by team, position, and search terms
- Match filtering by stage, group, and team with detailed goal and card tracking
- Backup and restore functionality for database management