๐ NEW: Enhanced Database System v2.0 - Production-ready architecture with advanced analytics and user management!
A comprehensive coding skills assessment platform that integrates multiple programming platforms with educational achievements to provide unified rankings.
The Unified Ranking System is a sophisticated Python application that revolutionizes how programmers track and assess their coding skills across multiple platforms. By combining competitive programming ratings, educational achievements, and activity patterns, it provides a holistic view of your programming prowess.
- ๐ Multi-Platform Integration: Automatically fetches ratings from CodeForces, LeetCode, CodeChef, and AtCoder
- ๐ Educational Tracking: Scrapes Coursera profiles to extract course completions and calculate intelligent bonus points
- ๐ Activity Visualization: Generates GitHub-style heatmaps showing coding consistency across platforms
- ๐ข Unified Rankings: Uses sophisticated algorithms to combine platform ratings with educational bonuses
- ๐ฅ Multi-User Support: Secure authentication system supporting multiple users with persistent data
- ๐พ Data Persistence: SQLite database stores all user data locally with encrypted passwords
- CodeForces (Max: 3000) - Competitive programming excellence
- LeetCode (Max: 2500) - Interview preparation mastery
- CodeChef (Max: 1800) - Programming contest proficiency
- AtCoder (Max: 2800) - Japanese competitive programming platform
Smart Auto-Fetch System:
- ๐ Automatic rating retrieval via official APIs
- ๐ Real-time data validation and error handling
- ๐ Intelligent fallback to manual entry when needed
Coursera Profile Scraping:
- ๐ Automatic extraction of completed courses from public profiles
- ๐๏ธ Institution recognition (Harvard, Stanford, MIT get premium scores)
- ๐ Completion date tracking for timeline analysis
- ๐งฎ AI-powered bonus calculation based on multiple factors
Intelligent Bonus Calculation (Max: 45 points per course):
- Institution Factor (0-10): University prestige and global ranking
- Duration Factor (0-5): Course depth, specialization length
- Field Factor (0-10): Relevance to tech industry (AI, Data Science, Programming)
- Skills Factor (0-20): Market demand analysis and salary impact
GitHub-Style Activity Heatmaps:
- ๐ฉ Daily coding activity visualization across all platforms
- ๐ Combined activity metrics from multiple sources
- ๐จ Beautiful visual progress representation
- ๐ Yearly overview with streak tracking
Sophisticated Ranking Algorithm:
- โ๏ธ Weighted platform scores based on difficulty
- ๐ Normalized rating scales for fair comparison
- ๐ฏ Platform difficulty consideration in weighting
- ๐ Seamless educational bonus integration
- ๐ Final unified ranking calculation
The system now features a comprehensive, normalized database schema designed for scalability and performance:
- bcrypt password hashing (upgraded from SHA-256)
- Session management with tracking and analytics
- Email verification system (ready for activation)
- Rich user profiles with timezone, language preferences
- 15 specialized tables with proper relationships
- Foreign key constraints ensuring data integrity
- Strategic indexes for optimal query performance
- Generated columns for automatic calculations
- Platform Management: 6 pre-configured platforms with auto-fetch
- Course Intelligence: 12 top institutions + 14 smart categories
- Achievement System: Badges, milestones, and gamification
- Analytics Engine: System-wide insights and reporting
# System health check
python db_analyzer.py
# Generate analytics report
python db_manager.py report
# Create backup
python db_manager.py backup
# Export data
python db_manager.py exportPerfect for: Beginners, most users, systems with compatibility issues
- โ Visible password input (universal compatibility)
- โ Complete feature set with intuitive interface
- โ Automatic platform rating fetching
- โ Full Coursera integration and bonus calculation
- โ Heatmap generation and user profiles
Perfect for: Security-conscious users, advanced developers
- โ Hidden password input with enhanced security
- โ All Simple Version features plus security enhancements
- โ Advanced error handling and logging
- โ Object-oriented architecture for maintainability
- โ Enhanced data validation and sanitization
Perfect for: Quick testing, demonstration, single-session use
- โ No registration required - immediate access
- โ Direct platform input and instant calculations
- โ Full ranking computation and heatmap generation
โ ๏ธ No data persistence between sessionsโ ๏ธ Single user only (no authentication system)
- Python 3.7+ installed on your system
- Internet connection for API calls and web scraping
- Public profiles on coding platforms (for auto-fetch)
- Public Coursera profile (optional, for course bonus)
- Download/Clone this repository
- Navigate to the
backendfolder - Double-click
start.bat(Windows) or run from command line
The intelligent launcher will:
- โ Automatically detect Python installation
- ๐ฆ Install required packages if missing
- ๐ฏ Present you with three version options
- ๐ ๏ธ Handle errors and provide guidance
Total Score = (Weighted Platform Score) + (Course Bonus Points)
Where:
- Weighted Platform Score = ฮฃ(Platform Rating ร Platform Weight)
- Course Bonus Points = ฮฃ(Individual Course Bonuses)
- Platform Weights = Dynamic based on difficulty and participation
- Stanford Machine Learning: ~40-45 points (top-tier institution + high-demand field)
- MIT Computer Science: ~35-40 points (prestigious institution + core programming)
- Google Data Analytics: ~25-30 points (industry recognition + practical skills)
- Harvard CS50: ~30-35 points (prestigious + comprehensive programming)
- Difficulty Assessment: Harder platforms receive higher weights
- Participation Analysis: Active user bases get consideration
- Rating Distribution: Normalized across different rating scales
- Industry Recognition: Platform reputation in hiring processes
- Authentication System: Secure user management with bcrypt password hashing
- API Integration Layer: Robust web scraping and API calls with error handling
- Ranking Engine: Sophisticated algorithms for unified score calculation
- Visualization Engine: Beautiful heatmap generation with statistical analysis
- Data Persistence: SQLite database with optimized queries and data integrity
- CodeForces API: Official REST API for contest and user data
- LeetCode GraphQL: Advanced querying for comprehensive profile data
- CodeChef Web Scraping: Intelligent parsing with rate limiting
- Coursera Profile Scraping: Selenium-based extraction with mock data fallback
- Platform Profile Validation: Real-time verification of usernames
- Rating Verification: Cross-reference with platform data
- Course Certificate Validation: Only certified completions count
- Error Recovery: Intelligent fallbacks and user guidance
- Progress Tracking: Historical rating changes over time
- Activity Patterns: Peak coding times and consistency metrics
- Achievement Insights: Course completion impact on overall ranking
- Comparative Analysis: Performance across different platforms
- Local Data Storage: All information stays on your machine
- No Cloud Dependencies: Complete offline functionality
- Encrypted Credentials: Secure password storage with bcrypt
- Ethical Scraping: Respectful rate limiting and public data only
For complete setup instructions, troubleshooting, and advanced usage:
normalization_main/
โโโ backend/ # ๐ฏ Main application directory
โ โโโ start.bat # ๐ Universal launcher
โ โโโ main_simple.py # ๐ง Simple version
โ โโโ main_oop_fixed.py # ๐ก๏ธ Advanced version
โ โโโ main.py # ๐ Original single-user
โ โโโ README.md # ๐ Complete documentation
โ โ
โ โโโ services/ # ๐๏ธ Core business logic
โ โ โโโ auth_service.py # ๐ค User authentication
โ โ โโโ ranking_service.py # ๏ฟฝ Rating calculations
โ โ โโโ input_handlers/ # ๐ฎ User interface logic
โ โ
โ โโโ rating_scraper_api/ # ๐ Platform integrations
โ โ โโโ CodeForces_api.py # ๐ฆ CodeForces API
โ โ โโโ leetcode_api.py # ๐จ LeetCode GraphQL
โ โ โโโ CodeChef_api.py # ๏ฟฝ CodeChef scraping
โ โ
โ โโโ cousera/ # ๐ Educational features
โ โ โโโ coursera_scraper.py # ๐ท๏ธ Profile extraction
โ โ
โ โโโ bonus_calculatorF/ # ๐งฎ Bonus calculation
โ โ โโโ bonus_calculator.py # ๐ฐ Intelligent scoring
โ โ
โ โโโ heatmap/ # ๐ Visualization
โ โ โโโ heat_map.py # ๐จ GitHub-style graphs
โ โ
โ โโโ logic_formulas/ # ๐ข Ranking algorithms
โ โ โโโ formula_main.py # โ๏ธ Core ranking logic
โ โ โโโ ranking_platform.py # ๐๏ธ Platform management
โ โ
โ โโโ [additional modules] # ๐ง Supporting functionality
โ
โโโ README.md # ๐ This overview file
"Used the unified ranking to showcase my skills during job interviews. The combination of competitive programming ratings and educational certificates gave recruiters a complete picture of my abilities."
"The heatmap visualization motivated me to code more consistently. Seeing my activity patterns helped me identify and fix gaps in my practice routine."
"Adding my Coursera certifications boosted my ranking significantly. The intelligent bonus system recognized the value of my Stanford ML course and Google certificates."
"Compared my performance across platforms and identified where to focus my efforts. The weighted scoring system showed that improving my CodeForces rating had the biggest impact."
Ready to unify your coding achievements? Here's how:
- Download or clone this repository
- Open the
backendfolder - Run
start.bat(Windows) or execute from terminal - Choose your preferred version (Simple recommended for first-time users)
- Follow the guided setup process
- Register your account (Simple/Advanced versions)
- Add your coding platform usernames
- Connect your Coursera profile (optional but recommended)
- Generate your first unified ranking
- Explore heatmaps and analytics
- Optimize Platform Performance: Focus on platforms with higher weights
- Strategic Course Selection: Choose high-value courses from prestigious institutions
- Consistent Activity: Maintain regular coding practice for better heatmap metrics
- Profile Optimization: Keep platform profiles public for automatic data fetching
<<<<<<< HEAD ๐ Transform how you track and showcase your programming journey. Start building your unified coding profile today!