π€Theme Format
interface Theme {
/** Theme's name */
name: string;
/** Theme's description */
description: string;
/** Array of theme authors */
authors: {
/** Author's nickname */
name: string;
/** Author's Discord user ID */
id: string;
}[];
/** Theme version (currently 2) */
spec: 2;
/** Object containing the semantic color recolorations */
semanticColors: {
/** Semantic key */
[semanticKey: string]: [
/** Dark color */
string,
/** Light color */
string,
/** Amoled color */
string
];
};
/** Object containing the raw color recolorations */
rawColors: {
[rawKey: string]: string;
};
/** Background that shows up in chat */
background: {
/** Determines the blurriness of the background (goes from 0-1) */
blur: number;
/** A link to the background */
url: string;
/** Determines the opacity of the background (goes from 0-1, affects color too) */
alpha: number;
};
}
Color codes inside the semanticColors
and rawColors
object can be the following:
3/6 character HEX -->
#RGB(A)
or#RRGGBB(AA)
Alpha is optional, may crash discord if used in a
rawColor
CSS
rgba()
-->rgba(0, 0, 0, 1)
[ ! ]
rbga()
needs to follow the above format exactly. You cannot usergba(r g b a)
orrgba(r g b / a)
A
transparent
string can also be used
Example
{
"name": "Lavender Heaven",
"description": "A theme made by Vodka",
"authors": [
{
"name": "Vodka Martini",
"id": "1068030255455015013"
}
],
"spec": 2,
"semanticColors": {
"HEADER_PRIMARY": ["#EFDFD7", "#E7D6CE", "#A07D6C"]
},
"rawColors": {
"PRIMARY_500": "#9E8376"
},
"background": {
"blur": 0.6,
"url": "https://cdn.discordapp.com/attachments/1086985889286209586/1099189661995380897/82ef73f876a5ef467a8263b694e4f0b8.jpg",
"alpha": 0.4
}
}
Last updated