A comprehensive Extract, Transform, Load (ETL) solution with modern analytics dashboard for the Judicial Service of Ghana. This project provides a complete data warehousing and business intelligence solution.
- Extract: Automated data extraction from multiple sources (CSV, Excel, JSON)
- Transform: Data cleaning, standardization, and business logic application
- Load: Automated loading into MySQL data warehouse
- Quality: Data quality validation and reporting
- Beautiful UI: Modern, responsive design with dark/light themes
- Interactive Charts: Real-time visualizations using Chart.js
- Real-time Data: Live data from your MySQL data warehouse
- Multiple Views: Overview, Cases, Courts, Judges, and Trends
- Python 3.9+
- XAMPP (MySQL running)
- Judicial data files in
Data/,mock_data/, orgenerated_data/folders
-
Start XAMPP MySQL and ensure it's running
-
Run the complete pipeline:
./run_complete_pipeline.sh
-
Open your browser:
http://localhost:8080
This single command will:
- Install all dependencies
- Run the complete ETL pipeline
- Perform data quality checks
- Start the modern dashboard
python3 etl_pipeline.pypython3 data_quality_checker.pycd modern_dashboard
./start_dashboard.sh- Multiple Formats: CSV, Excel, JSON support
- Multiple Sources: Data/, mock_data/, generated_data/ folders
- Error Handling: Robust error handling and logging
- Flexible: Easy to add new data sources
- Cleaning: Handle missing values, duplicates, format standardization
- Business Logic: Calculate resolution times, validate dates, amounts
- Standardization: Consistent column names, data types
- Audit Trail: Track creation and update timestamps
- MySQL Integration: Direct loading into judicial_dw database
- Referential Integrity: Maintain foreign key relationships
- Batch Processing: Efficient bulk data loading
- Error Recovery: Rollback on failures
- Completeness Checks: Missing value analysis
- Consistency Validation: Duplicate detection, format validation
- Business Rules: Date logic, amount validation, experience checks
- Integrity Checks: Foreign key validation
- Reporting: Detailed quality reports with recommendations
- Responsive Layout: Works on desktop, tablet, mobile
- Dark/Light Themes: Toggle between themes
- Smooth Animations: Hover effects and transitions
- Professional UI: Clean, modern interface
- Real-time Charts: Live data from MySQL
- Multiple Views: Overview, Cases, Courts, Judges, Trends
- Interactive Elements: Clickable charts and navigation
- Auto-refresh: Charts update automatically
- Key Performance Indicators: Resolution rates, processing times
- Case Analysis: Outcomes, payment status, resolution times
- Court Performance: Cases per court, location distribution
- Judge Analytics: Experience distribution, assignments
- Trend Analysis: Historical filing trends
- Efficient Processing: Batch operations for large datasets
- Memory Management: Streaming data processing
- Error Recovery: Robust error handling and logging
- Monitoring: Comprehensive logging and metrics
By Farrakhan