feat(web): frontend v1 — login (handle+contraseña), sidebar rooms+buscador, chat estilo Element
SPA React 19 + Vite + Mantine v9 en modo oscuro (acento índigo), datos mock para iterar el diseño antes de cablear el gateway. Login con identidad + contraseña (la contraseña desbloqueará la identidad Ed25519 cifrada en el dispositivo). Sidebar: avatar de usuario, buscador (rooms/usuarios/mensajes) y lista de rooms con candado E2E / hash cleartext / badges de no leídos. Panel de chat estilo Element (avatar+nombre+hora+texto) con composer interactivo.
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
import { createTheme, type MantineColorsTuple } from "@mantine/core";
|
||||
|
||||
// Acento de marca de unibus — un violeta-índigo moderno.
|
||||
const brand: MantineColorsTuple = [
|
||||
"#f1edff",
|
||||
"#dcd3ff",
|
||||
"#b5a3f5",
|
||||
"#8d70ed",
|
||||
"#6c47e6",
|
||||
"#5a2fe2",
|
||||
"#5023e0",
|
||||
"#4119c7",
|
||||
"#3915b3",
|
||||
"#2f0f9e",
|
||||
];
|
||||
|
||||
export const theme = createTheme({
|
||||
primaryColor: "brand",
|
||||
colors: { brand },
|
||||
fontFamily:
|
||||
"Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
|
||||
defaultRadius: "md",
|
||||
headings: { fontWeight: "650" },
|
||||
});
|
||||
Reference in New Issue
Block a user