├── .editorconfig ├── LICENSE ├── README.md ├── assets ├── frappe.webp ├── latte.webp ├── macchiato.webp ├── mocha.webp └── preview.webp ├── justfile ├── renovate.json ├── spotify-player.tera └── theme.toml /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig helps developers define and maintain consistent 2 | # coding styles between different editors and IDEs 3 | # EditorConfig is awesome: https://EditorConfig.org 4 | 5 | root = true 6 | 7 | [*] 8 | charset = utf-8 9 | indent_size = 2 10 | indent_style = space 11 | end_of_line = lf 12 | insert_final_newline = true 13 | trim_trailing_whitespace = true 14 | 15 | # go 16 | [*.go] 17 | indent_style = tab 18 | indent_size = 4 19 | 20 | # python 21 | [*.{ini,py,py.tpl,rst}] 22 | indent_size = 4 23 | 24 | # rust 25 | [*.rs] 26 | indent_size = 4 27 | 28 | # documentation, utils 29 | [*.{md,mdx,diff}] 30 | trim_trailing_whitespace = false 31 | 32 | # windows shell scripts 33 | [*.{cmd,bat,ps1}] 34 | end_of_line = crlf 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Catppuccin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
15 |
16 |
49 |
50 |
53 | Copyright © 2021-present Catppuccin Org 54 |
55 | 56 | 59 | -------------------------------------------------------------------------------- /assets/frappe.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/catppuccin/spotify-player/34b3d23806770185b72466d777853c73454b85a6/assets/frappe.webp -------------------------------------------------------------------------------- /assets/latte.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/catppuccin/spotify-player/34b3d23806770185b72466d777853c73454b85a6/assets/latte.webp -------------------------------------------------------------------------------- /assets/macchiato.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/catppuccin/spotify-player/34b3d23806770185b72466d777853c73454b85a6/assets/macchiato.webp -------------------------------------------------------------------------------- /assets/mocha.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/catppuccin/spotify-player/34b3d23806770185b72466d777853c73454b85a6/assets/mocha.webp -------------------------------------------------------------------------------- /assets/preview.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/catppuccin/spotify-player/34b3d23806770185b72466d777853c73454b85a6/assets/preview.webp -------------------------------------------------------------------------------- /justfile: -------------------------------------------------------------------------------- 1 | _default: 2 | @just --list 3 | 4 | build: 5 | whiskers spotify-player.tera 6 | -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json", 3 | "extends": [ 4 | "local>catppuccin/renovate-config" 5 | ] 6 | } 7 | -------------------------------------------------------------------------------- /spotify-player.tera: -------------------------------------------------------------------------------- 1 | --- 2 | whiskers: 3 | version: "2.2.0" 4 | filename: "theme.toml" 5 | --- 6 | 7 | {%- for _, flavor in flavors -%} 8 | {%- set palette = flavor.colors -%} 9 | 10 | [[themes]] 11 | name = "Catppuccin-{{ flavor.identifier }}" 12 | [themes.palette] 13 | background = "#{{ palette.base.hex }}" 14 | foreground = "#{{ palette.text.hex }}" 15 | black = "#{{ palette.base.hex }}" 16 | blue = "#{{ palette.blue.hex }}" 17 | cyan = "#{{ palette.sky.hex }}" 18 | green = "#{{ palette.green.hex }}" 19 | magenta = "#{{ palette.mauve.hex }}" 20 | red = "#{{ palette.red.hex }}" 21 | white = "#{{ palette.text.hex }}" 22 | yellow = "#{{ palette.yellow.hex }}" 23 | bright_black = "#{{ palette.base.hex }}" 24 | bright_blue = "#{{ palette.blue.hex }}" 25 | bright_cyan = "#{{ palette.sky.hex }}" 26 | bright_green = "#{{ palette.green.hex }}" 27 | bright_magenta = "#{{ palette.mauve.hex }}" 28 | bright_red = "#{{ palette.red.hex }}" 29 | bright_white = "#{{ palette.text.hex }}" 30 | bright_yellow = "#{{ palette.yellow.hex }}" 31 | 32 | [themes.component_style] 33 | selection = { bg = "#{{ palette.surface0.hex }}", modifiers = ["Bold"] } 34 | block_title = { fg = "Magenta" } 35 | playback_track = { fg = "Cyan", modifiers = ["Bold"] } 36 | playback_album = { fg = "Yellow" } 37 | playback_metadata = { fg = "Blue" } 38 | playback_progress_bar = { bg = "#{{ palette.surface0.hex }}", fg = "Green" } 39 | current_playing = { fg = "Green", modifiers = ["Bold"] } 40 | page_desc = { fg = "Cyan", modifiers = ["Bold"] } 41 | table_header = { fg = "Blue" } 42 | border = {} 43 | playback_status = { fg = "Cyan", modifiers = ["Bold"] } 44 | playback_artists = { fg = "Cyan", modifiers = ["Bold"] } 45 | playlist_desc = { fg = "#{{ palette.subtext0.hex }}" } 46 | 47 | {% endfor -%} 48 | -------------------------------------------------------------------------------- /theme.toml: -------------------------------------------------------------------------------- 1 | [[themes]] 2 | name = "Catppuccin-latte" 3 | [themes.palette] 4 | background = "#eff1f5" 5 | foreground = "#4c4f69" 6 | black = "#eff1f5" 7 | blue = "#1e66f5" 8 | cyan = "#04a5e5" 9 | green = "#40a02b" 10 | magenta = "#8839ef" 11 | red = "#d20f39" 12 | white = "#4c4f69" 13 | yellow = "#df8e1d" 14 | bright_black = "#eff1f5" 15 | bright_blue = "#1e66f5" 16 | bright_cyan = "#04a5e5" 17 | bright_green = "#40a02b" 18 | bright_magenta = "#8839ef" 19 | bright_red = "#d20f39" 20 | bright_white = "#4c4f69" 21 | bright_yellow = "#df8e1d" 22 | 23 | [themes.component_style] 24 | selection = { bg = "#ccd0da", modifiers = ["Bold"] } 25 | block_title = { fg = "Magenta" } 26 | playback_track = { fg = "Cyan", modifiers = ["Bold"] } 27 | playback_album = { fg = "Yellow" } 28 | playback_metadata = { fg = "Blue" } 29 | playback_progress_bar = { bg = "#ccd0da", fg = "Green" } 30 | current_playing = { fg = "Green", modifiers = ["Bold"] } 31 | page_desc = { fg = "Cyan", modifiers = ["Bold"] } 32 | table_header = { fg = "Blue" } 33 | border = {} 34 | playback_status = { fg = "Cyan", modifiers = ["Bold"] } 35 | playback_artists = { fg = "Cyan", modifiers = ["Bold"] } 36 | playlist_desc = { fg = "#6c6f85" } 37 | 38 | [[themes]] 39 | name = "Catppuccin-frappe" 40 | [themes.palette] 41 | background = "#303446" 42 | foreground = "#c6d0f5" 43 | black = "#303446" 44 | blue = "#8caaee" 45 | cyan = "#99d1db" 46 | green = "#a6d189" 47 | magenta = "#ca9ee6" 48 | red = "#e78284" 49 | white = "#c6d0f5" 50 | yellow = "#e5c890" 51 | bright_black = "#303446" 52 | bright_blue = "#8caaee" 53 | bright_cyan = "#99d1db" 54 | bright_green = "#a6d189" 55 | bright_magenta = "#ca9ee6" 56 | bright_red = "#e78284" 57 | bright_white = "#c6d0f5" 58 | bright_yellow = "#e5c890" 59 | 60 | [themes.component_style] 61 | selection = { bg = "#414559", modifiers = ["Bold"] } 62 | block_title = { fg = "Magenta" } 63 | playback_track = { fg = "Cyan", modifiers = ["Bold"] } 64 | playback_album = { fg = "Yellow" } 65 | playback_metadata = { fg = "Blue" } 66 | playback_progress_bar = { bg = "#414559", fg = "Green" } 67 | current_playing = { fg = "Green", modifiers = ["Bold"] } 68 | page_desc = { fg = "Cyan", modifiers = ["Bold"] } 69 | table_header = { fg = "Blue" } 70 | border = {} 71 | playback_status = { fg = "Cyan", modifiers = ["Bold"] } 72 | playback_artists = { fg = "Cyan", modifiers = ["Bold"] } 73 | playlist_desc = { fg = "#a5adce" } 74 | 75 | [[themes]] 76 | name = "Catppuccin-macchiato" 77 | [themes.palette] 78 | background = "#24273a" 79 | foreground = "#cad3f5" 80 | black = "#24273a" 81 | blue = "#8aadf4" 82 | cyan = "#91d7e3" 83 | green = "#a6da95" 84 | magenta = "#c6a0f6" 85 | red = "#ed8796" 86 | white = "#cad3f5" 87 | yellow = "#eed49f" 88 | bright_black = "#24273a" 89 | bright_blue = "#8aadf4" 90 | bright_cyan = "#91d7e3" 91 | bright_green = "#a6da95" 92 | bright_magenta = "#c6a0f6" 93 | bright_red = "#ed8796" 94 | bright_white = "#cad3f5" 95 | bright_yellow = "#eed49f" 96 | 97 | [themes.component_style] 98 | selection = { bg = "#363a4f", modifiers = ["Bold"] } 99 | block_title = { fg = "Magenta" } 100 | playback_track = { fg = "Cyan", modifiers = ["Bold"] } 101 | playback_album = { fg = "Yellow" } 102 | playback_metadata = { fg = "Blue" } 103 | playback_progress_bar = { bg = "#363a4f", fg = "Green" } 104 | current_playing = { fg = "Green", modifiers = ["Bold"] } 105 | page_desc = { fg = "Cyan", modifiers = ["Bold"] } 106 | table_header = { fg = "Blue" } 107 | border = {} 108 | playback_status = { fg = "Cyan", modifiers = ["Bold"] } 109 | playback_artists = { fg = "Cyan", modifiers = ["Bold"] } 110 | playlist_desc = { fg = "#a5adcb" } 111 | 112 | [[themes]] 113 | name = "Catppuccin-mocha" 114 | [themes.palette] 115 | background = "#1e1e2e" 116 | foreground = "#cdd6f4" 117 | black = "#1e1e2e" 118 | blue = "#89b4fa" 119 | cyan = "#89dceb" 120 | green = "#a6e3a1" 121 | magenta = "#cba6f7" 122 | red = "#f38ba8" 123 | white = "#cdd6f4" 124 | yellow = "#f9e2af" 125 | bright_black = "#1e1e2e" 126 | bright_blue = "#89b4fa" 127 | bright_cyan = "#89dceb" 128 | bright_green = "#a6e3a1" 129 | bright_magenta = "#cba6f7" 130 | bright_red = "#f38ba8" 131 | bright_white = "#cdd6f4" 132 | bright_yellow = "#f9e2af" 133 | 134 | [themes.component_style] 135 | selection = { bg = "#313244", modifiers = ["Bold"] } 136 | block_title = { fg = "Magenta" } 137 | playback_track = { fg = "Cyan", modifiers = ["Bold"] } 138 | playback_album = { fg = "Yellow" } 139 | playback_metadata = { fg = "Blue" } 140 | playback_progress_bar = { bg = "#313244", fg = "Green" } 141 | current_playing = { fg = "Green", modifiers = ["Bold"] } 142 | page_desc = { fg = "Cyan", modifiers = ["Bold"] } 143 | table_header = { fg = "Blue" } 144 | border = {} 145 | playback_status = { fg = "Cyan", modifiers = ["Bold"] } 146 | playback_artists = { fg = "Cyan", modifiers = ["Bold"] } 147 | playlist_desc = { fg = "#a6adc8" } 148 | 149 | --------------------------------------------------------------------------------