Skip to content

📚 Feature Request: Modernize Documentation Theme #386

@s-celles

Description

@s-celles

Hi,

Summary

Consider upgrading from the current sphinx_rtd_theme to a more modern and user-friendly documentation theme to improve the overall documentation experience.

Current Situation

PlatformIO documentation currently uses the sphinx_rtd_theme (Read The Docs theme) as configured in conf.py.

While this theme has served well, it's showing its age and lacks many modern UX improvements that newer themes provide.

Proposed Solution

Switch to a more modern Sphinx theme such as Furo, which offers:

Benefits of Furo Theme:

  • Modern Design: Clean, responsive design that works excellently on mobile devices
  • Better Navigation: Improved sidebar navigation with better visual hierarchy
  • Dark Mode: Built-in dark/light mode toggle
  • Better Typography: Enhanced readability with improved font choices and spacing
  • Accessibility: Better accessibility features and keyboard navigation
  • Performance: Faster loading times and better performance
  • Active Development: Actively maintained with regular updates

Visual Comparison

Implementation Details

Required Changes:

  1. Update conf.py to use Furo theme:

    # Replace current theme configuration
    html_theme = "furo"
  2. Install Furo dependency:

    pip install furo
  3. Update requirements.txt or equivalent dependency file

  4. Review and potentially update theme-specific configurations

Alternative Themes to Consider:

If Furo doesn't meet all requirements, other modern options include:

  • PyData Sphinx Theme: Used by NumPy, Pandas, and other major projects
  • Sphinx Material: Material Design inspired theme
  • Sphinx Book Theme: Modern theme used by Jupyter Book

Expected Impact

  • User Experience: Significantly improved reading experience, especially on mobile
  • Accessibility: Better compliance with accessibility standards
  • Maintenance: Easier maintenance with actively developed themes
  • Community: More attractive documentation may help with user adoption

Additional Context

Many major open-source projects have modernized their documentation themes:

  • NumPy, Pandas, Matplotlib (PyData theme)
  • FastAPI (custom modern theme)
  • Pydantic (Material theme)

The current RTD theme, while functional, gives the documentation a dated appearance that may not reflect the modern, active nature of the PlatformIO project.

Checklist

  • Evaluate theme options (Furo, PyData, others)
  • Test theme with existing content
  • Ensure all current features work with new theme
  • Update CI/CD pipeline if needed
  • Update documentation build instructions
  • Review mobile responsiveness
  • Test accessibility features

Priority: according maintainer's preferences
Effort: Low-Medium
Labels: enhancement, documentation, good first issue

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions