--- license: mit title: DTE Punjab β€” Training Dashboard v2 sdk: docker colorFrom: yellow short_description: A full-featured Flask dashboard for the BDDS, DTE, NIELIT. --- # πŸŽ“ DTE Punjab β€” Training Dashboard v2 A comprehensive, full-featured Flask-based analytical dashboard designed for the Big Data & Data Science Training Programme conducted for the Department of Technical Education and Industrial Training (DTE), Government of Punjab. ## 🌐 Live Demo [Experience the Dashboard Live](https://princelv-dte.hf.space/) ## 🌐 GITHUB REPO: https://github.com/lovnishverma/dte_dashboard --- image ## ✨ Key Features * **πŸ“Š Comprehensive Analytics:** Real-time KPI cards, batch overview strips, and multi-dimensional mini-charts (gender/batch/branch splits). * **πŸ“ˆ Advanced Visualizations:** Detailed district bar charts, branch/gender doughnuts, designation breakdowns, and batch-gender grouped metrics using Chart.js. * **πŸ’‘ Smart Insights Engine:** Auto-generated analytical insight cards with animated progress bars evaluating demographic and geographic distributions. * **πŸ—ΊοΈ Interactive Geospatial Mapping:** Clickable bubble map plotting participant density across Punjab districts. Features an integrated Google Maps fallback and click-to-open functionality for specific polytechnic colleges. * **πŸ—„οΈ Dynamic Participant Data:** Searchable, filterable (by batch, designation, district), and fully sortable paginated data table. * **πŸ“₯ Export Capabilities:** One-click CSV generation for both complete datasets and actively filtered views. * **πŸŒ“ Modern UI/UX:** Fully responsive, premium interface with a persistent Dark / Light mode toggle powered by vanilla CSS variables and `localStorage`. * **πŸ–ΌοΈ Media Gallery:** Built-in lightbox gallery showcasing batch-wise group photographs. --- ## πŸ› οΈ Technology Stack * **Backend:** Python 3, Flask, Pandas, OpenPyXL, python-dotenv * **Frontend:** HTML5, CSS3, Vanilla JavaScript (ES6+), Chart.js * **APIs & Integrations:** Google Maps JavaScript API (Advanced Markers) --- ## βš™οΈ Installation & Setup **1. Clone the repository:** ```bash git clone https://github.com/lovnishverma/dte_dashboard.git cd dte_dashboard ``` **2. Create and activate a virtual environment (Recommended):** ```bash python -m venv venv source venv/bin/activate # On Windows use: venv\Scripts\activate ``` **3. Install the required dependencies:** ```bash pip install -r requirements.txt ``` **4. Configure Environment Variables:** Ensure you have a `.env` file in the root directory containing your Google Maps API key (and optionally the Flask environment): ```env GOOGLE_MAPS_API_KEY=your_actual_api_key_here FLASK_ENV=development ``` **5. Run the application:** ```bash python app.py ``` *The dashboard will be available at `http://localhost:5000`* --- ## πŸ”§ Updates & Bug Fixes (v2) * Fixed `gm_authFailure` crash on `AdvancedMarkerElement` with a robust authentication guard. * Resolved designation normalization edge cases (e.g., standardizing "SR. LECTURER" vs "Senior Lecturer"). * Pagination now correctly displays windowed page numbers, preventing overflow for large datasets. * Optimized count-up animations to correctly target the first text node. * Charts and Canvas maps now seamlessly redraw on theme toggles and section re-visits. --- ## πŸ“ Project Structure ```text dte_dashboard/ β”œβ”€β”€ app.py # Core Flask backend & API routing β”œβ”€β”€ requirements.txt # Python dependencies β”œβ”€β”€ .env # Environment variables (API Keys) β”œβ”€β”€ data/ β”‚ └── DTE_all_Batch.xlsx # Source dataset β”œβ”€β”€ templates/ β”‚ └── index.html # Main dashboard UI └── static/ β”œβ”€β”€ css/style.css # Custom styling (Dark/Light themes) β”œβ”€β”€ js/main.js # Frontend logic & Chart integrations └── images/ # Batch group photographs ``` --- ## ©️ Copyright & Credits **Copyright Β© NIELIT Ropar** This dashboard was developed as part of a specialized training initiative under FutureSkills PRIME. Created by **Lovnish Verma** (Project Engineer) and **Ravi Kant** (Project Assistant), NIELIT ROPAR, under the expert guidance of **Dr. Sarwan Singh** and **Anita Budhiraja Mam**.