Este proyecto sigue los principios de Clean UI y Modern Dark Mode Design, inspirado en las tendencias actuales de GitHub Dark, VS Code, y aplicaciones modernas de escritorio.
- Usar un solo color de fondo (
background.paper) con bordes sutiles - Evitar bloques de color sólidos y pesados
- Bordes con transparencia:
rgba(255, 255, 255, 0.1) - En hover, los bordes se iluminan con el color primario
- Acción Primaria: Botones grandes, con color de relleno, alto contraste
- Acción Secundaria: IconButtons sutiles, solo se iluminan en hover
- Información Técnica: Tipografía monospace, opacidad reducida (0.5-0.7)
- Efecto de levitación (
translateY(-5px)) en hover - Transiciones suaves:
transition: 'all 0.3s ease-in-out' - Sombras dinámicas que aumentan en hover
- Bordes que cambian de color para indicar foco
- Nombres y Títulos: Fuente regular, bold, tamaño destacado
- IDs Técnicos:
fontFamily: 'monospace'para indicar datos de sistema - Descripciones: Color secundario, tamaño body2
- Versiones: Chips con fondo semi-transparente
┌─────────────────────────────┐
│ [History] [Delete] │ ← Acciones secundarias (esquina superior)
│ │
│ [App Icon] │ ← Icono con drop-shadow
│ App Name │
│ [Developer Chip] │
│ │
│ Description text... │
│ │
│ ─────────────────────────── │ ← Divisor sutil
│ com.app.id │ ← ID técnico (monospace, discreto)
│ [Update to vX.X.X] │ ← Acción primaria (botón full-width)
└─────────────────────────────┘
borderRadius: 4(16-32px según configuración MUI)border: '1px solid rgba(255, 255, 255, 0.1)'- Hover:
borderColor: 'primary.main'
elevation={0}(sin sombra por defecto)- Hover:
boxShadow: '0 8px 24px -4px rgba(0,0,0,0.6)' - Botones primarios:
boxShadow: '0 4px 12px rgba(74, 134, 207, 0.3)'
- Iconos de app:
filter: 'drop-shadow(0 4px 6px rgba(0,0,0,0.3))' - Tamaño consistente: 72x72px para apps instaladas
<Chip
label={developer}
size="small"
variant="outlined"
sx={{
color: 'text.secondary',
borderColor: 'rgba(255,255,255,0.1)',
}}
/><Chip
label={`v${version}`}
size="small"
sx={{
backgroundColor: 'rgba(88, 166, 255, 0.1)',
color: 'info.main',
fontWeight: 600,
}}
/>variant="contained"fullWidthpara máxima área de clic (Ley de Fitts)- Incluye icono (
startIcon={<Update />}) - Texto descriptivo: "Update v1.2.3"
- Sombra con glow del color primario
variant="text"oIconButton- Sin color de fondo por defecto
- Color y fondo solo en hover
- Borde sutil opcional:
border: '1px solid rgba(255,255,255,0.1)'
- IconButton sin color por defecto
- Color
error.mainsolo en hover - Fondo semi-transparente en hover:
rgba(255, 107, 107, 0.1) - Tooltip descriptivo obligatorio
- CardContent padding:
p: 3(24px) - Gap entre elementos:
gap: 1(8px) ogap: 1.5(12px) - Separación de secciones:
mb: 1omb: 2
- Color:
rgba(255,255,255,0.05)- muy sutil - Border:
borderTop: '1px solid' - Padding:
pt: 1(8px)
- Altura fija para consistencia:
340px - Usar
flexGrow: 1en descripción para empujar footer al fondo mt: 'auto'en el footer para anclarlo abajo
- Siempre incluir tooltips en IconButtons
- Usar traducciones (
t()) para textos - Describir la acción, no el icono
- Reducir opacidad o cambiar a grises
- Mantener legibilidad del texto
- Indicar visualmente que la acción no está disponible
- Botones primarios: Full width cuando sea posible
- IconButtons:
size="small"pero con padding adecuado - Espaciado mínimo entre botones:
spacing={1}
- Primary:
#4A86CF(Azul) - Acciones principales - Info:
#58A6FF(Azul claro) - Información, versiones - Error:
#FF6B6B(Rojo) - Acciones destructivas - Text Secondary: Gris claro - Información secundaria
- Bordes sutiles:
0.1 - Información técnica:
0.5-0.7 - Fondos hover:
0.1
❌ No usar:
- Colores de error permanentes (solo en hover)
- Múltiples elevaciones (
elevation) en modo dark - Bloques de color sólidos para separar secciones
- Bordes gruesos o muy contrastados
- Fuentes sans-serif para IDs técnicos
✅ Usar en su lugar:
- Colores neutros que se vuelven semánticos en hover
- Bordes sutiles con transparencia
- Divisores con opacidad muy baja
- Tipografía monospace para datos técnicos
- Jerarquía visual mediante tamaño, peso y espaciado
- Material Design 3: Fundamentos de componentes
- GitHub Dark Theme: Inspiración para bordes y superficies
- Ley de Fitts: Botones primarios grandes y accesibles
- Clean UI: Minimalismo, jerarquía clara, micro-interacciones sutiles