Skip to content

Feature Request: Add Support for Additional Themes #23

@csprasad

Description

@csprasad

Hi everyone! 👋

Currently, the theming system in this project is hardcoded in DevLint/Core/ThemeManager.swift, and only a limited number of themes (e.g., Dark, Light, and Solarized) are supported. To make the project more versatile and user-friendly, we’d like to add support for additional themes.

This feature will allow users to choose from a variety of themes and customize their coding environment to their preferences.


Popular Xcode Themes

---- ---- ---- ---- ----
Dracula Monokai One Dark Solarized Dark Solarized Light
Nord Material Theme Cobalt2 Palenight Ayu Mirage
Gruvbox Tomorrow Night Base16 Oceanic Next City Lights
Bright Horizon SynthWave '84 Night Owl Winter is Coming
GitHub Dark GitHub Light Atom One Dark Atom One Light Flatland

Why This Feature is Important

  • User Preference: Different developers have different preferences for themes. Adding more themes will make the project more inclusive and appealing to a wider audience.
  • Accessibility: Some themes are better suited for users with visual impairments or specific needs.
  • Flexibility: A robust theming system will make it easier to add new themes in the future.

How to Implement

  1. Locate the Hardcoded Themes
    Open DevLint/Core/ThemeManager.swift to find the current theme definitions.

  2. Add a New Theme
    Define a new theme by adding its color scheme to the ThemeManager model.

  3. Test the Changes
    Build and run the project to ensure the new theme works as expected.


Help Wanted

If you’re familiar with theming systems or have experience working with color schemes, your help would be greatly appreciated! 🎨

How to Contribute

  1. Fork the repository.
  2. Add a new theme to the ThemeManager.swift file.
  3. Submit a PR with a clear description of your changes.

Additional Notes

  • If you’re unsure about which colors to use, you can refer to popular themes like Dracula, Monokai, or One Dark.
  • If you need help getting started, feel free to ask in the comments!

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgood first issueGood for newcomershelp wantedExtra attention is neededthemeAnything related to app theme

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions