Saltearse al contenido

Temas

Presets de tema

Keirost incluye 9 presets visuales que cambian la identidad visual de toda la interfaz.

Presets disponibles

PresetDescripcionPaleta
keirost-classicAzul corporativo clasico#0D9488 teal
midnightOscuro y elegante#1E1E2E
carbonNegro carbone con detalles grises#2A2A2A
deep-oceanAzul profundo marin#0F172A
forestVerde bosque natural#14532D
plumCiruela moderna#581C87
nebulaVioleta nebuloso#312E81
sunsetNaranja atardecer#78350F
customPersonalizado por la empresaconfigurable

Cambiar tema

Desde la UI

El selector de tema esta en Ajustes > Apariencia. Al cambiar, la interfaz se actualiza instantaneamente (sin recargar).

Desde API

PATCH /api/config/branding
Authorization: Bearer <token>
Content-Type: application/json
{
"theme": "deep-ocean",
"dark_mode": "system"
}

Modo oscuro

Keirost soporta tres modos de oscuridad:

ModoComportamiento
lightSiempre modo claro
darkSiempre modo oscuro
systemSigue la preferencia del sistema operativo

El modo oscuro puede combinarse con cualquier preset de tema.

CSS variables del modo oscuro

Todas las variables CSS tienen su equivalente dark: prefixed:

/* Claro */
--color-ink-900: #0F172A;
--color-surface: #FFFFFF;
--color-line: #E2E8F0;
/* Oscuro (override automatico) */
.dark --color-ink-900: #F8FAFC;
.dark --color-surface: #0F172A;
.dark --color-line: #1E293B;

Personalizacion por empresa

Cada tenant puede personalizar su identidad visual:

PATCH /api/config/branding
{
"company_logo_url": "/storage/branding/logo.png",
"favicon_url": "/storage/branding/favicon.ico",
"accent_color": "#0D9488",
"css_variables": {
"--color-accent": "#0D9488",
"--color-accent-hover": "#0F766E",
"--font-heading": "Inter",
"--font-body": "Inter"
}
}

Variables personalizables

VariableDescripcion
--color-accentColor principal de marca
--color-accent-hoverColor al hacer hover
--color-accent-softColor suave para fondos
--font-headingTipografia de titulos
--font-bodyTipografia del cuerpo
--border-radiusRedondez de bordes
--shadow-levelIntensidad de sombras

Estructura de archivos de tema

themes/
keirost-classic/
theme.json # Definicion de variables
index.css # Estilos base
midnight/
theme.json
index.css
...

theme.json

{
"name": "Midnight",
"mode": "dark",
"variables": {
"color-surface": "#1E1E2E",
"color-accent": "#818CF8",
"color-text": "#E2E8F0"
}
}

Plugins y temas

Los plugins pueden aportar sus propios temas:

{
"id": "mi-tema-porporal",
"manifest_version": "1",
"name": "Mi Tema Corporativo",
"version": "1.0.0",
"ui": {
"themes": [
{
"id": "mi-tema",
"name": "Mi Tema",
"variables": {
"color-accent": "#2563EB",
"color-surface": "#EFF6FF"
}
}
]
}
}

El tema del plugin aparece automaticamente en el selector de temas.


Resumen de endpoints

MetodoRutaDescripcion
GET/api/config/brandingVer branding actual
PATCH/api/config/brandingActualizar branding
GET/api/config/themesListar temas disponibles
POST/api/config/themes/previewPrevisualizar tema antes de aplicar