|
| 1 | +<img width="150" alt="SNK" src="https://github.com/user-attachments/assets/1121ae03-cf96-455e-8119-596f6f5eb58e" /> |
| 2 | + |
| 3 | +# SwiftNEW |
| 4 | + |
| 5 | + |
| 6 | + |
| 7 | +[](https://github.com/1998code/SwiftNEWKit/actions/workflows/validate-json.yml) |
| 8 | + |
| 9 | + |
| 10 | + |
| 11 | + |
| 12 | +[English](../README.md) · [繁中](README_tc.md) · [简中](README_zh.md) · [粵語](README_hc.md) · [日本語](README_ja.md) · [한국어](README_ko.md) · [Français](README_fr.md) · **Español** |
| 13 | + |
| 14 | +Un framework de presentación **"Novedades"** moderno y nativo de SwiftUI para todas las plataformas Apple — fondos con degradados animados, efectos de vidrio, carga de datos remotos y soporte completo de RTL y localización listo para usar. |
| 15 | + |
| 16 | + |
| 17 | + |
| 18 | +## 🎨 Galería |
| 19 | + |
| 20 | +| Claro | Oscuro | |
| 21 | +|:-----:|:----:| |
| 22 | +|  |  | |
| 23 | + |
| 24 | +## 🚀 Inicio rápido |
| 25 | + |
| 26 | +**1. Añade el paquete** en Xcode → *File → Add Package Dependencies…* |
| 27 | + |
| 28 | +> [!IMPORTANT] |
| 29 | +> **URL del paquete** |
| 30 | +> |
| 31 | +> ``` |
| 32 | +> https://github.com/1998code/SwiftNEWKit |
| 33 | +> ``` |
| 34 | +
|
| 35 | +**2. Añade un `data.json`** al bundle de tu app: |
| 36 | +
|
| 37 | +> [!TIP] |
| 38 | +> Ejemplo de notas de versión en JSON |
| 39 | +> |
| 40 | +> ```json |
| 41 | +> [ |
| 42 | +> { |
| 43 | +> "version": "1.0", |
| 44 | +> "new": [ |
| 45 | +> { "icon": "star.fill", "title": "Bienvenido", "subtitle": "Primeros pasos", "body": "¡Gracias por descargar nuestra app!" } |
| 46 | +> ] |
| 47 | +> } |
| 48 | +> ] |
| 49 | +> ``` |
| 50 | +
|
| 51 | +**3. Intégralo en tu vista:** |
| 52 | +
|
| 53 | +> [!NOTE] |
| 54 | +> Integración mínima con SwiftUI |
| 55 | +> |
| 56 | +> ```swift |
| 57 | +> import SwiftNEW |
| 58 | +> |
| 59 | +> struct ContentView: View { |
| 60 | +> @State private var showNew = false |
| 61 | +> var body: some View { |
| 62 | +> SwiftNEW(show: $showNew) |
| 63 | +> } |
| 64 | +> } |
| 65 | +> ``` |
| 66 | +
|
| 67 | +Eso es todo — SwiftNEW se activa automáticamente cuando cambia la versión de la app. |
| 68 | +
|
| 69 | +## ✨ Funcionalidades |
| 70 | +
|
| 71 | +| Funcionalidad | Desde | Descripción | |
| 72 | +|---------|:-----:|-------------| |
| 73 | +| 🔁 Bucle de iconos animado | 6.4.0 | Recorre SF Symbols con transiciones de reemplazo nativas | |
| 74 | +| 🧾 Esquema de iconos flexible | 6.4.0 | Define iconos con `icon`, `toIcon` o un arreglo `icons` completo | |
| 75 | +| 🎯 Insignia de vidrio por defecto | 6.4.0 | Insignias de icono de vidrio redondeadas dan a las filas un aspecto más suave | |
| 76 | +| 🌈 Glifos de icono con degradado | 6.4.0 | Los glifos de icono usan un degradado del tema de arriba-izquierda a abajo-derecha | |
| 77 | +| 🧩 Diseño de filas refinado | 6.4.0 | Iconos más grandes, filas más compactas y botones de acción más redondeados | |
| 78 | +| ⬇️ Controles de Continuar más bajos | 6.4.0 | Los controles de Continuar quedan más cerca del borde inferior para facilitar el alcance | |
| 79 | +| 🌊 Movimiento de malla líquida | 6.4.0 | `meshStyle`: fondos de malla animados `.still` o `.liquid` | |
| 80 | +| 🏷️ Prefijo de encabezado personalizado | 6.4.0 | Personaliza la línea de título del encabezado con `headingPrefix` | |
| 81 | +| 🔍 Búsqueda dentro de la hoja | 6.3.0 | Filtra las notas de la versión actual por título / subtítulo / cuerpo | |
| 82 | +| 🛡️ Carga resiliente | 6.3.0 | Maneja los fallos de carga con un estado de reintento integrado en lugar de un spinner infinito | |
| 83 | +| 🏷️ Encabezado personalizable | 6.3.0 | `headingStyle`: `.version`, `.versionOnly` o `.appName` | |
| 84 | +| 🔢 Número de build opcional | 6.3.0 | Oculta el número de build con `showBuild: false` | |
| 85 | +| 🎨 Efecto de partículas flotantes | 6.3.0 | Nuevo efecto especial `.particles` (TimelineView + Canvas) | |
| 86 | +| 🎯 Presentaciones flexibles | 6.2.0 | `.sheet`, `.fullScreenCover`, `.embed` | |
| 87 | +| 🌈 Color de texto adaptativo | 6.2.0 | El texto de los botones contrasta automáticamente con el fondo | |
| 88 | +| 🛠️ Inicializador simplificado | 6.2.0 | Valores directos — sin necesidad de envolver con `.constant()` | |
| 89 | +| 🪟 Glassmorfismo | 5.5.0 | Desenfoque moderno con transparencia personalizable | |
| 90 | +| 🌈 Degradados de malla y lineales | 5.3.0 | Fondos con degradados animados | |
| 91 | +| 🥽 Soporte de visionOS | 4.1.0 | Computación espacial nativa | |
| 92 | +| 🔄 Activación automática | 4.0.0 | Se muestra automáticamente cuando cambia la versión o el build | |
| 93 | +| 🎄 Efectos especiales | 3.9.0 | Nevada `.christmas`, arcoíris `.particles` | |
| 94 | +| 📱 Notificaciones Drop | 3.5.0 | Notificaciones de banner al estilo iOS | |
| 95 | +| 🔥 Firebase Realtime DB | 3.0.0 | Actualizaciones de contenido en vivo | |
| 96 | +| 🌐 JSON remoto | 3.0.0 | Carga desde cualquier endpoint REST | |
| 97 | +| 📚 Historial de versiones | 2.0.0 | Explora todas las versiones anteriores | |
| 98 | +
|
| 99 | +### Muestra de funcionalidades |
| 100 | +
|
| 101 | +| Degradado de malla (5.3+) | visionOS (4.1+) | |
| 102 | +|:--------------------:|:---------------:| |
| 103 | +| <img alt="Mesh" src="https://github.com/1998code/SwiftNEWKit/assets/54872601/a845c460-65d7-47a0-ae15-23897efd0508"> |  | |
| 104 | +
|
| 105 | +| Icono de la app (3.9.6+) | Historial (2.0+) | |
| 106 | +|:-----------------:|:--------------:| |
| 107 | +| <img height="400" alt="App Icon" src="https://user-images.githubusercontent.com/54872601/206886933-bc4d0d33-e0fc-4013-9456-f19679b10f5b.png"> | <img height="400" alt="History" src="https://user-images.githubusercontent.com/54872601/178129999-ad63b0ce-d65e-4d86-9882-37a5090e92bc.png"> | |
| 108 | +
|
| 109 | +## 📚 Más información |
| 110 | +
|
| 111 | +| Guía | Contenido | |
| 112 | +|-------|--------| |
| 113 | +| [Configuration](CONFIGURATION.md) | Todos los parámetros, ejemplos, fuentes de datos (local / remota / Firebase), modelo de datos | |
| 114 | +| [Platform Support & Installation](PLATFORM.md) | Versiones de SO compatibles, requisitos, matriz de funcionalidades, configuración de SPM | |
| 115 | +| [Contributing](CONTRIBUTING.md) | Estructura del proyecto, entorno de desarrollo, pautas de PR, solución de problemas | |
| 116 | +
|
| 117 | +## 📄 Licencia |
| 118 | +
|
| 119 | +SwiftNEW se publica bajo la **licencia MIT** — una de las licencias de código abierto más permisivas. |
| 120 | +
|
| 121 | +| | Detalles | |
| 122 | +|---|---------| |
| 123 | +| ✅ **Puedes** | Usarlo en apps comerciales (incluidas apps de pago de la App Store), modificarlo, redistribuirlo e incluirlo en software de código cerrado | |
| 124 | +| 📝 **Debes** | Mantener el aviso de copyright y de licencia original en tu proyecto | |
| 125 | +| ⚠️ **Sin garantía** | El software se proporciona "tal cual" — el autor no se hace responsable de los problemas derivados de su uso | |
| 126 | +
|
| 127 | +Consulta [LICENSE](../LICENSE) para el texto completo. |
| 128 | +
|
| 129 | +## 💖 Con el apoyo de |
| 130 | +
|
| 131 | +| Patrocinador | Recurso | |
| 132 | +|---------|----------| |
| 133 | +| <a href="https://m.do.co/c/ce873177d9ab"><img src="https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg" width="160px" alt="Digital Ocean"></a> | Infraestructura en la nube | |
| 134 | +| [](https://deepwiki.com/1998code/SwiftNEWKit) | Preguntas y respuestas sobre la documentación con IA | |
0 commit comments