Add New Theme Presets
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
Read the ThemePreset enum and its related methods in src/user_config.rs, using the Dracula or Nord preset as an example. Choose a distinct theme name and add it to the enum, all(), name(), from_name(), and to_theme(). Test the theme in the app and check that all listed UI colors are readable and consistent.
索引モデルが issue の本文から書いたものです。
説明
Add New Theme Presets
We want to expand our collection of built-in themes and we'd love YOUR creativity!
What We're Looking For
Feel free to add any theme you'd like! Some ideas to inspire you:
- Recreate your favorite color scheme from another app
- Design something based on a vibe (synthwave, lo-fi, nature, etc.)
- Create accessibility-focused themes (high contrast, colorblind-friendly)
- Port popular themes (Tokyo Night, Catppuccin, One Dark, Rosé Pine, etc.)
- Make something completely original!
How to Contribute
- Comment below with the theme name you want to add (to avoid duplicates)
- Open
src/user_config.rsand find theThemePresetenum - Add your theme in four places:
- Add variant to the
ThemePresetenum (e.g.,ThemePreset::YourTheme) - Add it to the
all()function array - Add the name in the
name()match statement - Add the name mapping in the
from_name()match statement - Add the color definitions in the
to_theme()match statement
- Add variant to the
- Test it in the app to make sure it looks good
- Submit a PR!
Current themes: Default, Spotify, Dracula, Nord, Solarized Dark, Monokai, Gruvbox, Custom
Color Elements to Define
Each theme needs to specify colors for all UI elements:
analysis_bar/analysis_bar_textactive/inactivebanner/error_border/error_texthint/hoveredplaybar_background/playbar_progress/playbar_progress_text/playbar_textselected/textheader/highlighted_lyrics
Look at the Dracula or Nord themes in the code for a complete example!
Guidelines
- Use RGB color values:
Color::Rgb(r, g, b) - Choose colors with good contrast for readability
- Test your theme to make sure all UI elements are visible and look good together
- Add helpful comments (like
// Purple,// Nord8 (frost)) to document your color choices - Give your theme a descriptive name
- One theme per PR to keep reviews simple
Feel free to ask questions in the comments if you need help getting started!
- 主要言語
- Rust
- スター
- 1.4k
- フォーク
- 238
- 平均マージ
- 10時間 1分
- マージ済み PR(30日)
- 171
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
LargeModGames/spotatui のほかの issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
LargeModGames/spotatui#977 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
LargeModGames/spotatui#872 · コメント 18 件 ·
メンテナーはふだん 1 日以内に返信
-
Text Emphasis off still bolds the selected row in every list and table対応中かも @jaopdc11 が 15 日前に担当しました。 オープンbug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
LargeModGames/spotatui#822 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
MPRIS Play/Pause stops audio but spotatui keeps showing and reporting playing対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンbug
難易度 3/5 1〜2日 初心者へのやさしさ 72/100
LargeModGames/spotatui#985 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 57/100
LargeModGames/spotatui#984 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
LargeModGames/spotatui の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
rubys/roundhouse#1917 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 2 日以内に返信
-
good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
pop-os/cosmic-applets#1619 ·
メンテナーはふだん 3 日以内に返信
-
binding:python bug
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信