Skip to content

Beta v4.1 - Python Page Optimization & Ranking Fix

Choose a tag to compare

@thomas0829 thomas0829 released this 05 Dec 10:09
· 324 commits to main since this release

Key Features

Python Ranking System

  • Fixed global ranking preservation: Added python_rank field (1-39,067) to maintain consistent ordering during filtering
  • Accurate PyPI bonus scoring: Projects with PyPI packages correctly receive 1.1x multiplier

Performance Optimization

  • Owner search speed: ~100x faster (<0.1s vs 10+ seconds)
  • Python owner index: 10,254 unique owners split by first character for instant lookup
  • Page load optimization: <0.5s with intelligent caching

Search Experience

  • Enhanced suggestions: Increased to 12 items (8 owners + 4 topics)
  • Lazy loading: Owner index files loaded on-demand by first character
  • Instant response: No need to load all 782 pages for owner search

UI/UX Improvements

  • Consistent animations: Python page now matches Overall page behavior
    • Table flash animation on page load
    • Updating rows animation during search
    • Skip animation flag for instant navigation
  • Scroll behavior: Auto scroll-to-top when returning to page 1
  • Loading indicators: Spinner shown below search bar (page content preserved)
  • Removed distractions: No more hover jump or pulse animations on owner names
  • Fixed pagination: Buttons correctly reappear after clearing search

Code Quality

  • F-string formatting: Fixed 20+ missing f prefixes in print statements across 4 files
  • Pylint score: Maintained 8.52/10 (adjusted minimum to 8.0/10)
  • Clean logging: GitHub Actions logs now display correct variable values

Statistics

  • Total Projects: 313,900
  • Python Projects: 39,067
  • PyPI Matches: 1,025
  • Python Owners: 10,254
  • Total Stars: 2,426,527

Deployment

  • Successfully deployed to GitHub Pages
  • Optimized build: 93.49 kB bundle size
  • Build script excludes data files from gh-pages branch

Technical Details

  • Scoring: GITHUB_WEIGHT=1.0, PYPI_BONUS=0.1 (multiplicative)
  • Data Organization: Symlink for development, copied in production
  • Testing: All tests passing with proper environment setup
  • Git Workflow: GitHub CLI integration for automated deployments

Files Modified

  • scripts/generate_frontend_data.py: Added python_rank field and owner index generation
  • frontend/src/PythonRankingsPage.js: Implemented ranking preservation and performance optimizations
  • src/seattle_source_ranker/collector/*.py: Fixed f-string formatting in logging
  • test/test_code_style.py: Adjusted pylint minimum score threshold
  • doc/VERSION_HISTORY.md: Comprehensive documentation of changes
  • README.md: Updated version badge and statistics