Need
Framework de interfaz de usuario
Default options
Why it's needed
Una buena opción para crear ventanas, barras laterales, barras de herramientas y ajustes, y para organizar una app para Mac en escenas.
.md to the page URL.
Codex use case
Usa Codex para crear la estructura inicial de apps nativas para Mac con SwiftUI, compilarlas y depurarlas.
Usa Codex para desarrollar apps para macOS con SwiftUI y configurar un ciclo de compilación y ejecución desde la shell. A medida que la app evolucione, incorpora flujos de trabajo para gestionar escenas y ventanas nativas de escritorio, integrar AppKit y firmar la app.
Usa Codex para crear la estructura inicial de apps nativas para Mac con SwiftUI, compilarlas y depurarlas.
Usa Codex para desarrollar apps para macOS con SwiftUI y configurar un ciclo de compilación y ejecución desde la shell. A medida que la app evolucione, incorpora flujos de trabajo para gestionar escenas y ventanas nativas de escritorio, integrar AppKit y firmar la app.
Usa Codex para desarrollar apps para macOS con SwiftUI y configurar un ciclo de compilación y ejecución desde la shell. A medida que la app evolucione, incorpora flujos de trabajo para gestionar escenas y ventanas nativas de escritorio, integrar AppKit y firmar la app.
Related links
| Skill | Why use it |
|---|---|
| Build macOS Apps | Desarrolla y depura apps para macOS principalmente desde la shell, diseña escenas y ventanas nativas de escritorio con SwiftUI, integra AppKit cuando sea necesario y prepara el proceso de firma y notarización. |
Al crear una app para Mac, pídele a Codex que primero elija el modelo de escenas adecuado: WindowGroup, Window, Settings, MenuBarExtra o DocumentGroup. Así, la app tendrá una estructura nativa de escritorio desde la primera versión, en lugar de partir de una ContentView al estilo de iOS.
Usa el shell como punto de partida para compilar y ejecutar la app. Para proyectos de Xcode, usa xcodebuild. Para apps organizadas como paquetes, usa swift build y un script script/build_and_run.sh dentro del proyecto que detenga el proceso anterior, compile la app e inicie la versión recién compilada. Si lo necesitas, el script también puede mostrar registros o datos de telemetría.
Si desarrollas una app con interfaz gráfica exclusivamente con SwiftPM, empaquétala y ejecútala como .app en lugar de iniciar el ejecutable directamente. Así evitas que la app no aparezca en el Dock y que surjan problemas de activación o de identidad del paquete durante la validación local.
Agrega el complemento Build macOS Apps cuando empieces a trabajar en aspectos más específicos del escritorio. Abarca los ciclos de compilación y depuración desde el shell, el empaquetado de apps de SwiftPM, los patrones nativos de escenas y ventanas de SwiftUI, la interoperabilidad con AppKit, el registro unificado de eventos, la clasificación de fallos en las pruebas y los procesos de firma y notarización.
Para obtener más información sobre cómo instalar y usar complementos y habilidades, consulta la documentación de complementos y la documentación de habilidades.
Da prioridad a las convenciones de Mac frente a los patrones de navegación de iOS. Usa NavigationSplitView para los diseños con barra lateral y vista de detalle, y escenas Settings explícitas para las preferencias. Usa barras de herramientas y comandos para que las acciones sean fáciles de encontrar, y elementos de la barra de menús para las utilidades ligeras que deban estar siempre disponibles.
Empieza con los materiales del sistema, los colores semánticos y los controles estándar. Agrega estilos de ventana personalizados, zonas de arrastre o superficies Liquid Glass solo cuando el producto necesite una interfaz de escritorio con un diseño propio.
Si SwiftUI cubre casi todo lo que necesitas, usa el puente con AppKit más pequeño posible para lo que falte. Algunos ejemplos son los paneles para abrir o guardar archivos, el control de qué elemento recibe primero los eventos, la validación de menús, los casos especiales de arrastrar y soltar y la integración de una NSView para un control especializado.
Para comprobar el comportamiento de la app en tiempo de ejecución, pídele a Codex que agregue algunos eventos de Logger al abrir ventanas, seleccionar elementos en la barra lateral, ejecutar comandos de menú o sincronizar datos en segundo plano. Después de iniciar la app, verifica esos eventos con log stream.
Si fallan las pruebas, pídele a Codex que primero ejecute el conjunto mínimo de pruebas que permita investigar el problema con xcodebuild test o swift test. Luego, pídele que determine si se trata de un error de compilación, una aserción fallida, un cierre inesperado, un fallo intermitente o un problema del entorno o de su configuración.
Cuando pases del desarrollo local a la distribución, pídele a Codex que prepare dos procedimientos: uno para generar el archivo de distribución manualmente en Xcode y otro para generarlo y notarizarlo mediante un script en cada lanzamiento. Pídele que inspeccione el paquete de la app, sus permisos especiales y la protección reforzada del entorno de ejecución con codesign y plutil. Usa App Store Connect CLI si también quieres subir la app desde la terminal.
Define la ventana principal, la ventana de configuración, las ventanas de utilidades y los elementos de la barra de menús como raíces de escenas independientes, en lugar de agrupar toda la app en una sola vista enorme.
Antes de crear barras laterales, barras de herramientas o materiales personalizados, comprueba si las API estándar de escenas y ventanas de SwiftUI ya ofrecen el comportamiento que buscas en Mac.
Usa NSViewRepresentable, NSViewControllerRepresentable o un auxiliar de NSWindow con una función bien delimitada para incorporar una capacidad de escritorio que falte. Mantén SwiftUI como fuente de verdad para la selección y el estado de la app.
Que la app se inicie correctamente en tu equipo no demuestra que esté firmada ni lista para la notarización. Conserva un procedimiento manual para generar el archivo de distribución en Xcode cuando necesites verificar una versión de forma puntual. Agrega un script para repetir el archivado y la notarización en cada distribución, y ejecuta las comprobaciones con codesign y plutil cuando la tarea incluya preparar la app para su distribución, más allá del desarrollo local.
Need
Default options
Why it's needed
Need
Framework de interfaz de usuario
Default options
Why it's needed
Una buena opción para crear ventanas, barras laterales, barras de herramientas y ajustes, y para organizar una app para Mac en escenas.
Need
Integración con AppKit
Default options
Why it's needed
Cuando SwiftUI no ofrezca un comportamiento de escritorio que necesites, integra AppKit solo para ese caso mediante NSViewRepresentable, NSViewControllerRepresentable o NSWindow.
Need
Compilación y empaquetado
Default options
xcodebuild, swift build y App Store Connect CLI
Why it's needed
Organiza la compilación local, la creación manual de archivos de distribución, la notarización mediante scripts y la carga de apps en la App Store en un proceso que puedas repetir desde la terminal.
| Need | Default options | Why it's needed |
|---|---|---|
| Framework de interfaz de usuario | SwiftUI | Una buena opción para crear ventanas, barras laterales, barras de herramientas y ajustes, y para organizar una app para Mac en escenas. |
| Integración con AppKit | AppKit | Cuando SwiftUI no ofrezca un comportamiento de escritorio que necesites, integra AppKit solo para ese caso mediante NSViewRepresentable , NSViewControllerRepresentable o NSWindow . |
| Compilación y empaquetado | xcodebuild , swift build y App Store Connect CLI | Organiza la compilación local, la creación manual de archivos de distribución, la notarización mediante scripts y la carga de apps en la App Store en un proceso que puedas repetir desde la terminal. |
Usa Codex y el complemento Build macOS Apps para convertir tu idea en una app nativa de...
Usa Codex y el complemento Build macOS Apps para registrar con `Logger` unos pocos eventos...
Usa Codex y el complemento Build iOS Apps para revisar la interfaz actual en iPhone y iPad y...