Skip to content

Conversation

Bittabola
Copy link

Summary

Adds a font picker feature that allows users to switch between sans-serif (Inter) and monospace (JetBrains Mono) fonts. The font picker integrates seamlessly with the existing theme picker UI.

Changes

  • Font Picker UI: Added font selection buttons alongside theme picker
  • Inter Font: Included Inter Variable font for sans-serif option
  • Runtime Switching: Users can switch fonts without page reload
  • Cookie Persistence: Font preferences are saved and persist across sessions
  • Theme Integration: Font picker works with all existing themes
  • Responsive Design: Available in both desktop and mobile navigation

Technical Details

  • Follows existing theme picker implementation patterns
  • Minimal code changes (~172 additions, 1 deletion)
  • No breaking changes to existing configurations
  • Font CSS is dynamically recompiled when switched
  • Cookie-based state management similar to theme picker

Testing

  • ✅ Docker container builds and runs successfully
  • ✅ Font switching works in real-time
  • ✅ Font preferences persist after browser refresh
  • ✅ No conflicts with existing theme functionality
  • ✅ Responsive design works on mobile and desktop

Screenshots

Users can now access font options through the theme picker dropdown:

  • Sans-serif: Uses Inter variable font for modern, clean typography
  • Monospace: Uses existing JetBrains Mono for code-friendly text

Backward Compatibility

  • All existing configurations continue to work unchanged
  • Default font remains JetBrains Mono if no selection is made
  • Theme picker behavior is unchanged

- Add Inter variable font for sans-serif option
- Implement font picker UI alongside theme picker
- Add font preference persistence via cookies
- Support runtime font switching between Inter (sans-serif) and JetBrains Mono (monospace)
- Clean up .gitignore to exclude .DS_Store and config/ directory
@Bittabola Bittabola closed this Aug 16, 2025
@Bittabola Bittabola deleted the feature/font-picker branch August 16, 2025 05:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant