474 lines
11 KiB
Markdown
474 lines
11 KiB
Markdown
|
|
# 🎨 SYNTAXIS Logo - Colección Animada
|
||
|
|
|
||
|
|
Logos animados profesionales para SYNTAXIS, diseñados para comunicar organización sistemática y orquestación perfecta.
|
||
|
|
|
||
|
|
## 📦 Archivos Incluidos
|
||
|
|
|
||
|
|
### 🚀 Animaciones de Entrada (One-time)
|
||
|
|
|
||
|
|
#### 1. **syntaxis-logo-icon-animated.svg**
|
||
|
|
- **Tipo:** Ensamblaje secuencial con rotación
|
||
|
|
- **Duración:** ~1.2s total
|
||
|
|
- **Efecto:** Piezas aparecen desde el centro, rotando hacia su posición
|
||
|
|
- **Uso ideal:**
|
||
|
|
- Splash screens
|
||
|
|
- Hero sections de landing pages
|
||
|
|
- Intro de presentaciones
|
||
|
|
- **Características:**
|
||
|
|
- Animación escalonada (staggered)
|
||
|
|
- El triángulo dorado aparece al final como clímax
|
||
|
|
- Solo se ejecuta una vez al cargar
|
||
|
|
|
||
|
|
#### 2. **syntaxis-logo-icon-construction.svg**
|
||
|
|
- **Tipo:** Construcción desde direcciones múltiples
|
||
|
|
- **Duración:** ~1.4s total
|
||
|
|
- **Efecto:** Piezas se deslizan desde arriba, abajo, izquierda y derecha
|
||
|
|
- **Uso ideal:**
|
||
|
|
- Videos explicativos
|
||
|
|
- Secciones "Cómo funciona"
|
||
|
|
- Animaciones de onboarding
|
||
|
|
- **Características:**
|
||
|
|
- Movimiento direccional coordinado
|
||
|
|
- Efecto bounce en el centro
|
||
|
|
- Comunica "ensamblaje sistemático"
|
||
|
|
|
||
|
|
#### 3. **syntaxis-logo-horizontal-animated.svg**
|
||
|
|
- **Tipo:** Logo completo con secuencia texto
|
||
|
|
- **Duración:** ~1.4s total
|
||
|
|
- **Efecto:** Icono se ensambla → texto aparece → tagline fade in
|
||
|
|
- **Uso ideal:**
|
||
|
|
- Headers de sitio web
|
||
|
|
- Intro de videos corporativos
|
||
|
|
- Presentaciones de marca
|
||
|
|
- **Características:**
|
||
|
|
- Tres fases de animación
|
||
|
|
- Branding completo en una secuencia
|
||
|
|
- Perfecto para primera impresión
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### ♾️ Animaciones Continuas (Loop)
|
||
|
|
|
||
|
|
#### 4. **syntaxis-logo-icon-pulse.svg**
|
||
|
|
- **Tipo:** Pulso con glow en centro
|
||
|
|
- **Duración:** 2s loop infinito
|
||
|
|
- **Efecto:** Triángulo central pulsa y brilla suavemente
|
||
|
|
- **Uso ideal:**
|
||
|
|
- Indicadores de estado activo
|
||
|
|
- Call-to-action buttons
|
||
|
|
- Dashboard widgets
|
||
|
|
- **Características:**
|
||
|
|
- Muy sutil, no distrae
|
||
|
|
- Atrae atención al centro (core)
|
||
|
|
- Drop-shadow animado
|
||
|
|
|
||
|
|
#### 5. **syntaxis-logo-loading.svg**
|
||
|
|
- **Tipo:** Spinner orbital
|
||
|
|
- **Duración:** 3s loop infinito (órbita) + 2s (fade)
|
||
|
|
- **Efecto:** Diamantes orbitan, cuadrados rotan
|
||
|
|
- **Uso ideal:**
|
||
|
|
- Loading spinners
|
||
|
|
- Estados "processing"
|
||
|
|
- Indicadores de trabajo en progreso
|
||
|
|
- **Características:**
|
||
|
|
- Comunicación clara de "trabajando"
|
||
|
|
- Branded loading indicator
|
||
|
|
- Múltiples capas de movimiento
|
||
|
|
|
||
|
|
#### 6. **syntaxis-logo-icon-ambient.svg**
|
||
|
|
- **Tipo:** Respiración orgánica
|
||
|
|
- **Duración:** 4-6s loop infinito
|
||
|
|
- **Efecto:** Expansión/contracción sutil + flotación
|
||
|
|
- **Uso ideal:**
|
||
|
|
- Elementos decorativos
|
||
|
|
- Headers de sección
|
||
|
|
- Fondos sutiles
|
||
|
|
- **Características:**
|
||
|
|
- MUY sutil, casi imperceptible
|
||
|
|
- Efecto "vivo" sin distraer
|
||
|
|
- Múltiples capas con delays
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### 🖱️ Animaciones Interactivas (Hover/Focus)
|
||
|
|
|
||
|
|
#### 7. **syntaxis-logo-icon-hover.svg**
|
||
|
|
- **Tipo:** Hover effects en formas individuales
|
||
|
|
- **Duración:** 0.3s transición
|
||
|
|
- **Efecto:** Formas crecen y cambian color al hover
|
||
|
|
- **Uso ideal:**
|
||
|
|
- Logos clickeables en navbar
|
||
|
|
- Botones de acción
|
||
|
|
- Links interactivos
|
||
|
|
- **Características:**
|
||
|
|
- Responde a `:hover`
|
||
|
|
- Cada forma puede tener hover individual
|
||
|
|
- El triángulo tiene efecto especial
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🎨 Características Técnicas
|
||
|
|
|
||
|
|
### Animaciones CSS
|
||
|
|
Todas las animaciones usan:
|
||
|
|
- `@keyframes` CSS nativos
|
||
|
|
- `transform` (GPU-acelerado)
|
||
|
|
- `opacity` y `filter` para efectos
|
||
|
|
- Sin JavaScript requerido
|
||
|
|
|
||
|
|
### Rendimiento
|
||
|
|
- ✅ Hardware-accelerated (GPU)
|
||
|
|
- ✅ No bloquea el thread principal
|
||
|
|
- ✅ Filesize: 1-2KB cada SVG
|
||
|
|
- ✅ Compatible con todos los navegadores modernos
|
||
|
|
|
||
|
|
### Personalización Fácil
|
||
|
|
|
||
|
|
```css
|
||
|
|
/* Cambiar velocidad */
|
||
|
|
.logo svg * {
|
||
|
|
animation-duration: 3s !important;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* Pausar animación */
|
||
|
|
.logo:hover svg * {
|
||
|
|
animation-play-state: paused;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* Delay de inicio */
|
||
|
|
.logo svg {
|
||
|
|
animation-delay: 1s;
|
||
|
|
}
|
||
|
|
|
||
|
|
/* Ejecutar solo una vez (quitar loop) */
|
||
|
|
.logo svg * {
|
||
|
|
animation-iteration-count: 1;
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📋 Guía de Selección Rápida
|
||
|
|
|
||
|
|
**¿Necesitas...?**
|
||
|
|
|
||
|
|
- ✨ **Primera impresión impactante** → `syntaxis-logo-icon-animated.svg`
|
||
|
|
- 🎬 **Video de producto/demo** → `syntaxis-logo-icon-construction.svg`
|
||
|
|
- 🏠 **Logo principal del sitio** → `syntaxis-logo-horizontal-animated.svg`
|
||
|
|
- ⏳ **Indicador de carga** → `syntaxis-logo-loading.svg`
|
||
|
|
- 🔘 **Botón con feedback** → `syntaxis-logo-icon-hover.svg`
|
||
|
|
- 📊 **Dashboard/estado activo** → `syntaxis-logo-icon-pulse.svg`
|
||
|
|
- 🎨 **Elemento decorativo** → `syntaxis-logo-icon-ambient.svg`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 💻 Ejemplos de Implementación
|
||
|
|
|
||
|
|
### HTML Básico
|
||
|
|
```html
|
||
|
|
<!-- Animación de entrada -->
|
||
|
|
<div class="hero">
|
||
|
|
<img src="syntaxis-logo-icon-animated.svg" alt="SYNTAXIS" width="200">
|
||
|
|
<h1>SYNTAXIS</h1>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Loading indicator -->
|
||
|
|
<div class="loading-state">
|
||
|
|
<img src="syntaxis-logo-loading.svg" alt="Loading..." width="100">
|
||
|
|
<p>Procesando...</p>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Logo interactivo en navbar -->
|
||
|
|
<nav>
|
||
|
|
<a href="/" class="logo-link">
|
||
|
|
<img src="syntaxis-logo-icon-hover.svg" alt="SYNTAXIS Home">
|
||
|
|
</a>
|
||
|
|
</nav>
|
||
|
|
```
|
||
|
|
|
||
|
|
### React Component
|
||
|
|
```jsx
|
||
|
|
import AnimatedLogo from './syntaxis-logo-icon-animated.svg';
|
||
|
|
import LoadingSpinner from './syntaxis-logo-loading.svg';
|
||
|
|
|
||
|
|
function LoadingScreen() {
|
||
|
|
return (
|
||
|
|
<div className="splash">
|
||
|
|
<img src={AnimatedLogo} alt="SYNTAXIS" />
|
||
|
|
<p>Cargando tu espacio de trabajo...</p>
|
||
|
|
</div>
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
function ProcessingState() {
|
||
|
|
return (
|
||
|
|
<div className="processing">
|
||
|
|
<img src={LoadingSpinner} width={80} />
|
||
|
|
<span>Ejecutando tarea...</span>
|
||
|
|
</div>
|
||
|
|
);
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
### Vue Component
|
||
|
|
```vue
|
||
|
|
<template>
|
||
|
|
<div class="header">
|
||
|
|
<img
|
||
|
|
:src="logo"
|
||
|
|
alt="SYNTAXIS"
|
||
|
|
class="brand-logo"
|
||
|
|
@click="goHome"
|
||
|
|
/>
|
||
|
|
</div>
|
||
|
|
</template>
|
||
|
|
|
||
|
|
<script>
|
||
|
|
import logo from '@/assets/syntaxis-logo-icon-hover.svg';
|
||
|
|
|
||
|
|
export default {
|
||
|
|
data() {
|
||
|
|
return { logo }
|
||
|
|
},
|
||
|
|
methods: {
|
||
|
|
goHome() {
|
||
|
|
this.$router.push('/');
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<style scoped>
|
||
|
|
.brand-logo {
|
||
|
|
cursor: pointer;
|
||
|
|
width: 120px;
|
||
|
|
transition: transform 0.2s;
|
||
|
|
}
|
||
|
|
|
||
|
|
.brand-logo:active {
|
||
|
|
transform: scale(0.95);
|
||
|
|
}
|
||
|
|
</style>
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🎯 Casos de Uso por Contexto
|
||
|
|
|
||
|
|
### Landing Page
|
||
|
|
```html
|
||
|
|
<!-- Hero Section -->
|
||
|
|
<section class="hero">
|
||
|
|
<img src="syntaxis-logo-icon-animated.svg" width="300">
|
||
|
|
<h1>SYNTAXIS</h1>
|
||
|
|
<p>Systematic Orchestration, Perfectly Arranged</p>
|
||
|
|
</section>
|
||
|
|
|
||
|
|
<!-- Features con ambient -->
|
||
|
|
<section class="features">
|
||
|
|
<div class="feature-icon">
|
||
|
|
<img src="syntaxis-logo-icon-ambient.svg" width="80">
|
||
|
|
</div>
|
||
|
|
</section>
|
||
|
|
```
|
||
|
|
|
||
|
|
### Dashboard/App
|
||
|
|
```html
|
||
|
|
<!-- Navbar -->
|
||
|
|
<nav>
|
||
|
|
<a href="/dashboard">
|
||
|
|
<img src="syntaxis-logo-icon-hover.svg" width="40">
|
||
|
|
</a>
|
||
|
|
</nav>
|
||
|
|
|
||
|
|
<!-- Active task indicator -->
|
||
|
|
<div class="active-task">
|
||
|
|
<img src="syntaxis-logo-icon-pulse.svg" width="60">
|
||
|
|
<span>3 tareas activas</span>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<!-- Loading overlay -->
|
||
|
|
<div class="overlay" v-if="loading">
|
||
|
|
<img src="syntaxis-logo-loading.svg" width="120">
|
||
|
|
</div>
|
||
|
|
```
|
||
|
|
|
||
|
|
### Email Signature
|
||
|
|
```html
|
||
|
|
<table>
|
||
|
|
<tr>
|
||
|
|
<td>
|
||
|
|
<!-- Usar versión estática para email -->
|
||
|
|
<img src="syntaxis-logo-icon.svg" width="60">
|
||
|
|
</td>
|
||
|
|
<td>
|
||
|
|
<strong>Tu Nombre</strong><br>
|
||
|
|
SYNTAXIS<br>
|
||
|
|
email@syntaxis.dev
|
||
|
|
</td>
|
||
|
|
</tr>
|
||
|
|
</table>
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## ⚙️ Configuración Avanzada
|
||
|
|
|
||
|
|
### Control de Animación con JavaScript
|
||
|
|
```javascript
|
||
|
|
// Pausar todas las animaciones
|
||
|
|
document.querySelectorAll('.logo svg *').forEach(el => {
|
||
|
|
el.style.animationPlayState = 'paused';
|
||
|
|
});
|
||
|
|
|
||
|
|
// Reiniciar animación
|
||
|
|
const logo = document.querySelector('.logo img');
|
||
|
|
logo.src = logo.src; // Force reload
|
||
|
|
|
||
|
|
// Detección de preferencias de usuario
|
||
|
|
if (window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||
|
|
// Usuario prefiere menos movimiento
|
||
|
|
document.querySelectorAll('.animated-logo').forEach(el => {
|
||
|
|
el.classList.add('no-animation');
|
||
|
|
});
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
### CSS para Accesibilidad
|
||
|
|
```css
|
||
|
|
/* Respetar preferencias del sistema */
|
||
|
|
@media (prefers-reduced-motion: reduce) {
|
||
|
|
.logo svg * {
|
||
|
|
animation: none !important;
|
||
|
|
transition: none !important;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
/* Pausar animaciones en print */
|
||
|
|
@media print {
|
||
|
|
.logo svg * {
|
||
|
|
animation: none !important;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🎨 Personalización de Colores
|
||
|
|
|
||
|
|
Todas las animaciones usan las variables de color SYNTAXIS:
|
||
|
|
|
||
|
|
```css
|
||
|
|
/* En tu CSS, puedes override los colores */
|
||
|
|
.custom-theme svg path[fill="#2C5F8E"] {
|
||
|
|
fill: var(--your-primary-color);
|
||
|
|
}
|
||
|
|
|
||
|
|
.custom-theme svg path[fill="#D97706"] {
|
||
|
|
fill: var(--your-accent-color);
|
||
|
|
}
|
||
|
|
|
||
|
|
.custom-theme svg rect[fill="#6B7280"] {
|
||
|
|
fill: var(--your-secondary-color);
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
O editar directamente el SVG:
|
||
|
|
```svg
|
||
|
|
<!-- Buscar y reemplazar en el archivo SVG -->
|
||
|
|
fill="#2C5F8E" → fill="#TU_COLOR"
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📱 Soporte de Navegadores
|
||
|
|
|
||
|
|
| Navegador | Versión Mínima | Notas |
|
||
|
|
|-----------|----------------|-------|
|
||
|
|
| Chrome | 90+ | ✅ Soporte completo |
|
||
|
|
| Firefox | 88+ | ✅ Soporte completo |
|
||
|
|
| Safari | 14+ | ✅ Soporte completo |
|
||
|
|
| Edge | 90+ | ✅ Soporte completo |
|
||
|
|
| Mobile Safari | 14+ | ✅ Soporte completo |
|
||
|
|
| Chrome Android | 90+ | ✅ Soporte completo |
|
||
|
|
|
||
|
|
Todas las animaciones usan features CSS ampliamente soportadas.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📊 Métricas de Rendimiento
|
||
|
|
|
||
|
|
### Tamaños de Archivo
|
||
|
|
- Animación simple: ~1.2KB
|
||
|
|
- Animación compleja: ~2.0KB
|
||
|
|
- Horizontal con texto: ~1.7KB
|
||
|
|
|
||
|
|
### Impacto en Performance
|
||
|
|
- **FPS:** 60fps consistente
|
||
|
|
- **CPU:** < 1% en desktop, < 3% en mobile
|
||
|
|
- **Memory:** < 100KB por instancia
|
||
|
|
- **Paint time:** < 2ms
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🔧 Troubleshooting
|
||
|
|
|
||
|
|
### La animación no se reproduce
|
||
|
|
1. Verificar que el archivo SVG esté completo
|
||
|
|
2. Comprobar que no hay CSS que override `animation`
|
||
|
|
3. Revisar console para errores de carga
|
||
|
|
|
||
|
|
### Animación muy rápida/lenta
|
||
|
|
```css
|
||
|
|
/* Ajustar velocidad globalmente */
|
||
|
|
.logo * {
|
||
|
|
animation-duration: 2s !important;
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
### Animación se ve cortada
|
||
|
|
- Verificar que el `viewBox` del SVG esté correcto
|
||
|
|
- Asegurar que el contenedor tenga espacio suficiente
|
||
|
|
- Usar `overflow: visible` si es necesario
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📄 Archivos Relacionados
|
||
|
|
|
||
|
|
- `SYNTAXIS_LOGO_README.md` - Documentación logos estáticos
|
||
|
|
- `syntaxis-logo-preview.html` - Preview de logos estáticos
|
||
|
|
- `syntaxis-logo-animations-gallery.html` - **Galería interactiva de animaciones** ⭐
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🚀 Próximos Pasos
|
||
|
|
|
||
|
|
1. **Ver la galería**: Abre `syntaxis-logo-animations-gallery.html` en tu navegador
|
||
|
|
2. **Elegir animación**: Selecciona según tu caso de uso
|
||
|
|
3. **Descargar SVG**: Click en "Descargar SVG" en cada card
|
||
|
|
4. **Implementar**: Usa los ejemplos de código arriba
|
||
|
|
5. **Personalizar**: Ajusta colores/velocidad según tu diseño
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 💡 Tips Profesionales
|
||
|
|
|
||
|
|
1. **Usa animaciones de entrada solo una vez** - No repitas en cada scroll
|
||
|
|
2. **Mantén loops sutiles** - Las animaciones continuas deben ser imperceptibles
|
||
|
|
3. **Respeta preferencias de accesibilidad** - Usa `prefers-reduced-motion`
|
||
|
|
4. **Optimiza para móvil** - Las animaciones complejas pueden afectar battery
|
||
|
|
5. **Test en dispositivos reales** - Especialmente para animaciones continuas
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📞 Contacto
|
||
|
|
|
||
|
|
- **Email:** hello@syntaxis.dev
|
||
|
|
- **Website:** syntaxis.dev
|
||
|
|
- **Documentación completa:** Ver archivos MD adicionales
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**SYNTAXIS** | Systematic Orchestration, Perfectly Arranged
|
||
|
|
© 2024 | Todos los archivos optimizados para producción
|