navidrome/ui/src/themes/moonbaseAlpha.js
craiglush 29c123854c
feat(ui): Add Moonbase themes (Alpha light + Bravo dark) (#5243)
* Add Moonbase theme

A warm dark theme with gold (#d4a039) accents on deep charcoal
backgrounds (#0a0a09/#141413). Features muted cream text (#e5ddd3),
copper error states (#c45c3c), and subtle earthy secondary tones.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Fix review comments on Moonbase theme

- Fix CSS selector: use :not(.player-delete) instead of :not([class=".player-delete"])
- Fix MuiFormHelperText override structure: target error key directly
- Remove empty icon: {} and avatar: {} from NDLogin overrides
- Use comma-separated rgba syntax and hex for linear-gradient

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Add Moonbase Alpha (light) and rename dark to Moonbase Bravo

Split the Moonbase theme into a complementary pair:
- Moonbase Alpha: warm cream/stone light theme with deep gold accents
- Moonbase Bravo: the original deep charcoal dark theme

Both share the same gold (#d4a039) brand accent, copper error states,
and earthy neutral palette. Alpha uses darkened gold (#9a7420) for
better contrast on light backgrounds.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Deluan Quintão <deluan@navidrome.org>
2026-06-05 20:35:56 -04:00

90 lines
1.6 KiB
JavaScript

import stylesheet from './moonbaseAlpha.css.js'
export default {
themeName: 'Moonbase - Alpha',
palette: {
primary: {
main: '#9a7420',
},
secondary: {
main: '#ede8df',
contrastText: '#1a1917',
},
type: 'light',
background: {
default: '#f5f0e8',
},
},
overrides: {
MuiPaper: {
root: {
color: '#1a1917',
backgroundColor: '#faf8f4',
},
},
MuiButton: {
textPrimary: {
color: '#9a7420',
},
textSecondary: {
color: '#1a1917',
},
},
MuiChip: {
clickable: {
background: '#ede8df',
},
},
MuiFormGroup: {
root: {
color: '#1a1917',
},
},
MuiFormHelperText: {
error: {
color: '#b04a2e',
},
},
MuiTableHead: {
root: {
color: '#6b635a',
background: '#f5f0e8 !important',
},
},
MuiTableCell: {
root: {
color: '#1a1917',
background: '#faf8f4 !important',
},
head: {
color: '#6b635a',
background: '#f5f0e8 !important',
},
},
NDLogin: {
systemNameLink: {
color: '#9a7420',
},
welcome: {
color: '#1a1917',
},
card: {
minWidth: 300,
background: '#faf8f4',
},
button: {
boxShadow: '3px 3px 5px rgba(0, 0, 0, 0.12)',
},
},
NDMobileArtistDetails: {
bgContainer: {
background:
'linear-gradient(to bottom, rgba(245, 240, 232, 0.72), #faf8f4)!important',
},
},
},
player: {
theme: 'light',
stylesheet,
},
}