Communitygithub.com

dimillian/patrones-swiftui-ui

Mejores prácticas y guías basadas en ejemplos para construir vistas y componentes de SwiftUI, incluyendo jerarquías de navegación, modificadores de vista personalizados y diseños responsivos con stacks y grids. Útil al crear o refactorizar interfaces de SwiftUI, diseñar arquitecturas de pestañas con TabView, componer pantallas con VStack/HStack, gestionar @State o @Binding, construir interfaces declarativas para iOS, o necesitar patrones y ejemplos específicos de componentes.

¿Qué es patrones-swiftui-ui?

Esta skill ofrece una guía completa y basada en ejemplos para desarrollar interfaces de usuario con SwiftUI, siguiendo las mejores prácticas de la industria. Está diseñada para ayudar a desarrolladores a construir vistas y componentes reutilizables, desde jerarquías de navegación complejas hasta diseños responsivos utilizando stacks, grids y modificadores personalizados. Es especialmente útil al crear o refactorizar interfaces SwiftUI, diseñar arquitecturas de pestañas con `TabView`, componer pantallas con `VStack` y `HStack`, o manejar estado con `@State` y `@Binding`. La skill proporciona patrones concretos para componentes comunes como listas, formularios, navegación y animaciones, facilitando la construcción de interfaces declarativas para iOS de manera eficiente y mantenible. Funciona como una referencia práctica y un punto de partida para desarrolladores que buscan aplicar patrones de diseño probados en sus proyectos SwiftUI.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/dimillian/skills/tree/main/skills/swiftui-ui-patterns

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace patrones-swiftui-ui?

Guía de mejores prácticas y ejemplos para construir vistas y componentes de SwiftUI, incluyendo jerarquías de navegación, modificadores de vista personalizados y diseños responsivos con stacks y grids. Úsela al crear o refactorizar interfaces de usuario en SwiftUI, diseñar arquitecturas de pestañas con TabView, componer pantallas con VStack/HStack, gestionar @State o @Binding, construir interfaces declarativas para iOS, o cuando necesite patrones y ejemplos específicos de componentes.

Contenido

Jerarquías de Navegación

Ejemplos y patrones para implementar navegación en SwiftUI:

  • Uso de NavigationStack para navegación jerárquica.
  • Diseño de TabView para arquitectura basada en pestañas.
  • Manejo de rutas y enlaces de navegación.

Modificadores de Vista Personalizados

Cómo crear modificadores reutilizables para estilos y comportamientos:

  • Definición de ViewModifier personalizados.
  • Aplicación de modificadores a vistas existentes.
  • Ejemplos de modificadores para bordes, sombras y animaciones.

Diseños Responsivos

Uso de stacks y grids para adaptarse a diferentes tamaños de pantalla:

  • VStack, HStack y ZStack para composición básica.
  • LazyVGrid y LazyHGrid para cuadrículas dinámicas.
  • Adaptación a orientación y clases de tamaño con SizeClass.

Gestión de Estado y Enlace

Mejores prácticas para manejar datos en SwiftUI:

  • @State para estado local.
  • @Binding para enlaces bidireccionales.
  • @ObservedObject, @StateObject y @EnvironmentObject para estado compartido.

Ejemplos Comunes

Aquí algunos patrones listos para usar:

  • Lista con navegación detallada: Uso de List y NavigationLink.
  • Formulario con campos y alternancia: Combinación de Form, TextField y Toggle.
  • Vista de cuadrícula de imágenes: Implementación con LazyVGrid y datos de muestra.
  • Animaciones personalizadas: Modificadores con animation(_:value:) y withAnimation.

Contribución

Si desea agregar un nuevo patrón o mejorar los existentes, por favor envíe un Pull Request. La documentación adicional es bienvenida.

Licencia

Este proyecto se distribuye bajo la licencia MIT.

Individual skills in this repo

This repo contains 7 individual skills — each has its own dedicated page.

dimillian/app-store-changelog

Create user-facing App Store release notes by collecting and summarizing all user-impacting changes since the last git tag (or a specified ref). Use when asked to generate a comprehensive release changelog, App Store "What's New" text, or release notes based on git history or tags.

dimillian/ios-debugger-agent

Use XcodeBuildMCP to build, run, launch, and debug the current iOS project on a booted simulator. Trigger when asked to run an iOS app, interact with the simulator UI, inspect on-screen state, capture logs/console output, or diagnose runtime behavior using XcodeBuildMCP tools.

dimillian/macos-spm-app-packaging

Scaffold, build, and package SwiftPM-based macOS apps without an Xcode project. Use when you need a from-scratch macOS app layout, SwiftPM targets/resources, a custom .app bundle assembly script, or signing/notarization/appcast steps outside Xcode.

dimillian/swift-concurrency-expert

Swift Concurrency review and remediation for Swift 6.2+. Use when asked to review Swift Concurrency usage, improve concurrency compliance, or fix Swift concurrency compiler errors in a feature or file. Concrete actions include adding Sendable conformance, applying @MainActor annotations, resolving actor isolation warnings, fixing data race diagnostics, and migrating completion handlers to async/await.

dimillian/swiftui-liquid-glass

Implement, review, or improve SwiftUI features using the iOS 26+ Liquid Glass API. Use when asked to adopt Liquid Glass in new SwiftUI UI, refactor an existing feature to Liquid Glass, or review Liquid Glass usage for correctness, performance, and design alignment.

dimillian/swiftui-performance-audit

Audit and improve SwiftUI runtime performance from code review and architecture. Use for requests to diagnose slow rendering, janky scrolling, high CPU/memory usage, excessive view updates, or layout thrash in SwiftUI apps, and to provide guidance for user-run Instruments profiling when code review alone is insufficient.

dimillian/swiftui-view-refactor

Refactor and review SwiftUI view files with strong defaults for small dedicated subviews, MV-over-MVVM data flow, stable view trees, explicit dependency injection, and correct Observation usage. Use when cleaning up a SwiftUI view, splitting long bodies, removing inline actions or side effects, reducing computed `some View` helpers, or standardizing `@Observable` and view model initialization patterns.

Skills relacionados