Adds a self-service editor at admin.larpaso.de so texts, images, links, Impressum/Datenschutz, fonts, font sizes and colors can be changed without a developer. All homepage/legal content moves into content/site.json and a new content/theme.json drives every CSS color/font/size token; the Astro pages read from these at build time. The admin/ service (Node/Express) provides bcrypt+session login with rate limiting, a schema-driven form UI (including a hex/RGB/alpha color picker), image upload, and a publish action that runs the Astro build and republishes into a volume shared with the nginx website container - so edits go live without redeploying that container. See DEPLOYMENT_ADMIN.md for the server-side setup steps.
113 lines
1.6 KiB
JSON
113 lines
1.6 KiB
JSON
{
|
|
"fonts": {
|
|
"heading": "Playfair Display",
|
|
"body": "Inter"
|
|
},
|
|
"fontSizes": {
|
|
"sm": "0.875rem",
|
|
"base": "1rem",
|
|
"md": "1.125rem",
|
|
"lg": "1.375rem",
|
|
"xl": "1.75rem",
|
|
"2xl": "2.25rem",
|
|
"3xl": "3rem"
|
|
},
|
|
"colors": {
|
|
"bg": {
|
|
"r": 23,
|
|
"g": 19,
|
|
"b": 15,
|
|
"a": 1
|
|
},
|
|
"bgAlt": {
|
|
"r": 28,
|
|
"g": 23,
|
|
"b": 18,
|
|
"a": 1
|
|
},
|
|
"surface": {
|
|
"r": 33,
|
|
"g": 27,
|
|
"b": 21,
|
|
"a": 1
|
|
},
|
|
"text": {
|
|
"r": 242,
|
|
"g": 234,
|
|
"b": 217,
|
|
"a": 1
|
|
},
|
|
"textMuted": {
|
|
"r": 168,
|
|
"g": 154,
|
|
"b": 133,
|
|
"a": 1
|
|
},
|
|
"border": {
|
|
"r": 201,
|
|
"g": 168,
|
|
"b": 118,
|
|
"a": 0.2
|
|
},
|
|
"primary": {
|
|
"r": 201,
|
|
"g": 168,
|
|
"b": 118,
|
|
"a": 1
|
|
},
|
|
"primaryDark": {
|
|
"r": 176,
|
|
"g": 143,
|
|
"b": 92,
|
|
"a": 1
|
|
},
|
|
"primaryContrast": {
|
|
"r": 26,
|
|
"g": 21,
|
|
"b": 17,
|
|
"a": 1
|
|
},
|
|
"accent": {
|
|
"r": 201,
|
|
"g": 168,
|
|
"b": 118,
|
|
"a": 1
|
|
},
|
|
"accentDark": {
|
|
"r": 176,
|
|
"g": 143,
|
|
"b": 92,
|
|
"a": 1
|
|
},
|
|
"success": {
|
|
"r": 122,
|
|
"g": 154,
|
|
"b": 107,
|
|
"a": 1
|
|
},
|
|
"danger": {
|
|
"r": 201,
|
|
"g": 123,
|
|
"b": 100,
|
|
"a": 1
|
|
},
|
|
"flag": {
|
|
"r": 201,
|
|
"g": 123,
|
|
"b": 100,
|
|
"a": 1
|
|
},
|
|
"flagBg": {
|
|
"r": 201,
|
|
"g": 123,
|
|
"b": 100,
|
|
"a": 0.1
|
|
},
|
|
"googleBlue": {
|
|
"r": 143,
|
|
"g": 178,
|
|
"b": 232,
|
|
"a": 1
|
|
}
|
|
}
|
|
}
|