💡Як влаштовано застосунок Vercel для iOS
Чудова історія про те, з яким рівнем уваги до деталей команда Vercel підійшла до створення першої версії свого iOS-застосунку. Їхня мета була амбітною — створити UI/UX, який міг би претендувати на Apple Design Award, і у статті вони детально пояснюють, як реалізували ключові дизайнерські рішення.
Одразу варто зазначити, що технічний стек — не нативний Swift, а React Native з Expo, але це не зменшує цінності розбору. Автори показують, як використали анімації, переходи, світлотінь, структурування екранів і мікровзаємодії, щоб досягти максимально плавного, акуратного і «преміального» досвіду.
Це корисне чтиво для всіх, хто хоче зрозуміти, як будувати дійсно якісний мобільний інтерфейс — незалежно від того, на якому фреймворку він створений.
🇺🇦 iOSDevUA
Чудова історія про те, з яким рівнем уваги до деталей команда Vercel підійшла до створення першої версії свого iOS-застосунку. Їхня мета була амбітною — створити UI/UX, який міг би претендувати на Apple Design Award, і у статті вони детально пояснюють, як реалізували ключові дизайнерські рішення.
Одразу варто зазначити, що технічний стек — не нативний Swift, а React Native з Expo, але це не зменшує цінності розбору. Автори показують, як використали анімації, переходи, світлотінь, структурування екранів і мікровзаємодії, щоб досягти максимально плавного, акуратного і «преміального» досвіду.
Це корисне чтиво для всіх, хто хоче зрозуміти, як будувати дійсно якісний мобільний інтерфейс — незалежно від того, на якому фреймворку він створений.
🇺🇦 iOSDevUA
Vercel
How we built the v0 iOS app
The v0 engineering team breaks down the challenges and decisions behind building the v0 app for iOS.
💡Покращення валідації форм у SwiftUI за допомогою Key Path
📖 У цій статті показано, як використання key path дозволяє суттєво зменшити кількість коду для перевірки форм у SwiftUI й зробити його значно чистішим та читабельнішим.
🇺🇦 iOSDevUA
📖 У цій статті показано, як використання key path дозволяє суттєво зменшити кількість коду для перевірки форм у SwiftUI й зробити його значно чистішим та читабельнішим.
🇺🇦 iOSDevUA
💡Один SwiftUI-застосунок — шість архітектур
Пітер Якуб переписав таск-менеджер шість разів, щоб спробувати визначити, яка архітектура працює найкраще. Цікаво, що він також зачіпає різницю між архітектурою та патернами проєктування — темою, в якій багато хто й досі плутається. У прикладах можна побачити підходи MVC, MVVM, VIPER, TCA, а також несподіваний висновок: Clean Architecture — це радше філософія, ніж конкретний набір правил (без згадок Роберта Мартина не обійшлося).
📖 Яких висновків він дійшов — читайте в оригіналі.
P.S. Автор не приховує, що використовував AI як допоміжний інструмент, але ще один погляд на вічну архітектурну дискусію точно не завадить.
🇺🇦 iOSDevUA
Пітер Якуб переписав таск-менеджер шість разів, щоб спробувати визначити, яка архітектура працює найкраще. Цікаво, що він також зачіпає різницю між архітектурою та патернами проєктування — темою, в якій багато хто й досі плутається. У прикладах можна побачити підходи MVC, MVVM, VIPER, TCA, а також несподіваний висновок: Clean Architecture — це радше філософія, ніж конкретний набір правил (без згадок Роберта Мартина не обійшлося).
📖 Яких висновків він дійшов — читайте в оригіналі.
P.S. Автор не приховує, що використовував AI як допоміжний інструмент, але ще один погляд на вічну архітектурну дискусію точно не завадить.
🇺🇦 iOSDevUA
Yaacoub
One SwiftUI App, Six Architectures
👍1
💡Які налаштування компілятора справді важливі для Swift Concurrency?
📖 У своїй статті Метт Массікотт детально проходиться по доступних опціях компілятора та пояснює, які з них варто використовувати в проєктах на Swift 6.
Окремо він розбирає практичне питання: які режими можна сміливо вмикати за замовчуванням, а які не мають сенсу чіпати, щоб не перевантажувати конфігурацію без реальної користі.
🇺🇦 iOSDevUA
📖 У своїй статті Метт Массікотт детально проходиться по доступних опціях компілятора та пояснює, які з них варто використовувати в проєктах на Swift 6.
Окремо він розбирає практичне питання: які режими можна сміливо вмикати за замовчуванням, а які не мають сенсу чіпати, щоб не перевантажувати конфігурацію без реальної користі.
🇺🇦 iOSDevUA
massicotte.org
What Setting Should I Use?
Here's a place to start if you are trying to get a handle on Swift compiler settings.
💡Що питають на співбесідах у команди, що працюють зі Swift
Інді-розробника запросили на технічну співбесіду в команду, яка займається SwiftUI для macOS. Хоча офер він у підсумку не отримав, зате поділився реальними завданнями та питаннями, які йому ставили під час технічного інтерв’ю. Корисний матеріал, щоб зрозуміти рівень очікувань і теми, на які звертають увагу в командах, що працюють безпосередньо з екосистемою Swift.
🇺🇦 iOSDevUA
Інді-розробника запросили на технічну співбесіду в команду, яка займається SwiftUI для macOS. Хоча офер він у підсумку не отримав, зате поділився реальними завданнями та питаннями, які йому ставили під час технічного інтерв’ю. Корисний матеріал, щоб зрозуміти рівень очікувань і теми, на які звертають увагу в командах, що працюють безпосередньо з екосистемою Swift.
🇺🇦 iOSDevUA
Oskargroth
Lessons from a Swift Interview
I interviewed for a SwiftUI frameworks role and didn't get the job. Here's what I learned about Swift algorithm design and the key insight I missed.
This media is not supported in your browser
VIEW IN TELEGRAM
💡SwiftUI Animation Playground — інтерактивний застосунок для вивчення анімацій
Знайшов ще один цікавий open-source проєкт, який допомагає зменшити плутанину під час роботи з різними типами анімацій у SwiftUI.
У застосунку можна одразу порівняти 9 типів анімацій:
Також доступні налаштування параметрів — duration, bounce, stiffness, damping та інші, що дозволяє краще відчути різницю між підходами.
Анімації можна тестувати на різних фігурах або додати власні — усе ж таки це open-source.
🛠 GitHub-репозиторій: https://github.com/josejacas/SwiftAnimPlayground
🇺🇦 iOSDevUA
Знайшов ще один цікавий open-source проєкт, який допомагає зменшити плутанину під час роботи з різними типами анімацій у SwiftUI.
У застосунку можна одразу порівняти 9 типів анімацій:
.spring, .smooth, .snappy, .bouncy, .easeIn, .easeOut, .easeInOut, .linear та .interpolatingSpring.
Також доступні налаштування параметрів — duration, bounce, stiffness, damping та інші, що дозволяє краще відчути різницю між підходами.
Анімації можна тестувати на різних фігурах або додати власні — усе ж таки це open-source.
🛠 GitHub-репозиторій: https://github.com/josejacas/SwiftAnimPlayground
🇺🇦 iOSDevUA
❤4
This media is not supported in your browser
VIEW IN TELEGRAM
💡Парадоксальний спосіб пришвидшити SwiftUI Preview
Звичайні збережені властивості — не найкращий варіант для прев’ю, адже Xcode перекомпілює файл щоразу, коли змінюється їхнє значення.
Натомість, якщо керувати параметрами через обчислювані властивості, оновлення прев’ю відбувається миттєво, без повної перекомпіляції.
Аксель Ле Пеннек навіть надіслав відповідний запит у Radar і отримав офіційне підтвердження від Apple, що це очікувана поведінка:
https://x.com/alpennec/status/2001578754032972116/photo/1
🇺🇦 iOSDevUA
Звичайні збережені властивості — не найкращий варіант для прев’ю, адже Xcode перекомпілює файл щоразу, коли змінюється їхнє значення.
Натомість, якщо керувати параметрами через обчислювані властивості, оновлення прев’ю відбувається миттєво, без повної перекомпіляції.
Аксель Ле Пеннек навіть надіслав відповідний запит у Radar і отримав офіційне підтвердження від Apple, що це очікувана поведінка:
https://x.com/alpennec/status/2001578754032972116/photo/1
🇺🇦 iOSDevUA
👍3
💡Огляд AnyLanguageModel
Я вже згадував нову бібліотеку AnyLanguageModel від Hugging Face, яка дозволяє замінити локальні моделі Apple на будь-які інші open-source LLM без зміни прикладного коду.
За посиланням — докладніший розбір того, як усе працює, які сценарії вже підтримуються та які плани розвитку бібліотеки заплановані на майбутнє.
🇺🇦 iOSDevUA
Я вже згадував нову бібліотеку AnyLanguageModel від Hugging Face, яка дозволяє замінити локальні моделі Apple на будь-які інші open-source LLM без зміни прикладного коду.
За посиланням — докладніший розбір того, як усе працює, які сценарії вже підтримуються та які плани розвитку бібліотеки заплановані на майбутнє.
🇺🇦 iOSDevUA
huggingface.co
Introducing AnyLanguageModel: One API for Local and Remote LLMs on Apple Platforms
We’re on a journey to advance and democratize artificial intelligence through open source and open science.
💡Типові проблеми AI-згенерованого Swift-коду
Вже не секрет, що більшість LLM поки що генерують Swift гірше, ніж Python, Java чи інші популярні мови. За посиланням — зручна добірка найпоширеніших помилок, які трапляються в AI-коді: від застарілих API та некоректної роботи з опціоналами до проблем із Concurrency й SwiftUI. Корисно перечитати й навіть додати в гайдлайни для вашого AI-агента, щоб одразу фільтрувати типові огріхи.
🇺🇦 iOSDevUA
Вже не секрет, що більшість LLM поки що генерують Swift гірше, ніж Python, Java чи інші популярні мови. За посиланням — зручна добірка найпоширеніших помилок, які трапляються в AI-коді: від застарілих API та некоректної роботи з опціоналами до проблем із Concurrency й SwiftUI. Корисно перечитати й навіть додати в гайдлайни для вашого AI-агента, щоб одразу фільтрувати типові огріхи.
🇺🇦 iOSDevUA
Hacking with Swift
What to fix in AI-generated Swift code
As AI-assisted coding increases in popularity, here are a handful of things I would suggest you look out for – and what to replace them with instead.
👍3
💡Як підготувати білд-систему Xcode для роботи з AI-агентами
Команда Tuist випустила чудовий дослідницький матеріал про те, як саме працює білд-система Xcode і які артефакти її роботи дійсно корисні для AI-агентів. У статті розбирають, які дані варто «віддавати» агентам для аналізу, а які, навпаки, створюють шум і лише заважають робити коректні висновки. Дуже корисне чтиво для всіх, хто хоче ефективно інтегрувати AI у пайплайни збірки та діагностики проєктів.
🇺🇦 iOSDevUA
Команда Tuist випустила чудовий дослідницький матеріал про те, як саме працює білд-система Xcode і які артефакти її роботи дійсно корисні для AI-агентів. У статті розбирають, які дані варто «віддавати» агентам для аналізу, а які, навпаки, створюють шум і лише заважають робити коректні висновки. Дуже корисне чтиво для всіх, хто хоче ефективно інтегрувати AI у пайплайни збірки та діагностики проєктів.
🇺🇦 iOSDevUA
📦 Penpot — open-source альтернатива Figma
Penpot значно простіший за Figma, але для більшості базових задач можливостей цілком вистачає. Серед ключових фіч:
👉 спільна робота в реальному часі
👉 підтримка дизайн-систем
👉 плагіни та розширення
👉 Inspect-режим, який помітно полегшує життя розробникам
Хороший варіант для команд, які шукають відкриту альтернативу без прив’язки до закритих сервісів.
🇺🇦 iOSDevUA
Penpot значно простіший за Figma, але для більшості базових задач можливостей цілком вистачає. Серед ключових фіч:
👉 спільна робота в реальному часі
👉 підтримка дизайн-систем
👉 плагіни та розширення
👉 Inspect-режим, який помітно полегшує життя розробникам
Хороший варіант для команд, які шукають відкриту альтернативу без прив’язки до закритих сервісів.
🇺🇦 iOSDevUA
GitHub
GitHub - penpot/penpot: Penpot: The open-source design tool for design and code collaboration
Penpot: The open-source design tool for design and code collaboration - penpot/penpot
📺 Відео з Swift Server Side Meetup
Ділюся записом доповідей із останнього мітапу по серверному Swift, де зібрали чимало практичних кейсів:
👉 Деплой в один клік — як спростити розгортання сервісів
👉 Serverless із бібліотекою Breeze — підхід до безсерверної архітектури на Swift
🇺🇦 iOSDevUA
Ділюся записом доповідей із останнього мітапу по серверному Swift, де зібрали чимало практичних кейсів:
👉 Деплой в один клік — як спростити розгортання сервісів
👉 Serverless із бібліотекою Breeze — підхід до безсерверної архітектури на Swift
🇺🇦 iOSDevUA
YouTube
Swift Server Side Meetup #7
Swift Server-Side Meetup: Deployment Pipelines & Serverless Backends
Join us for two incredible talks exploring the server-side of Swift! Learn how to deploy Swift servers to production and build serverless backends entirely in Swift.
🎯 TIMESTAMPS
00:00…
Join us for two incredible talks exploring the server-side of Swift! Learn how to deploy Swift servers to production and build serverless backends entirely in Swift.
🎯 TIMESTAMPS
00:00…
💡SQLiteData — огляд бібліотеки
Команда Point-Free випустила безкоштовний урок, присвячений основам роботи з їхньою бібліотекою SQLiteData — це API-сумісна альтернатива SwiftData, під капотом якої, як неважко здогадатися з назви, використовується наш улюблений SQLite.
У відео показують базові концепції, підхід до моделей і запитів та пояснюють, як почати використовувати SQLiteData у реальному проєкті.
🇺🇦 iOSDevUA
Команда Point-Free випустила безкоштовний урок, присвячений основам роботи з їхньою бібліотекою SQLiteData — це API-сумісна альтернатива SwiftData, під капотом якої, як неважко здогадатися з назви, використовується наш улюблений SQLite.
У відео показують базові концепції, підхід до моделей і запитів та пояснюють, як почати використовувати SQLiteData у реальному проєкті.
🇺🇦 iOSDevUA
www.pointfree.co
Video #347: Tour of SQLiteData: Basics
We give a tour of our SQLiteData library, a fast and lightweight alternative to SwiftData. We’ll set up a fresh project with the package, define models and configure the database, and even write SQL migrations with the help of Xcode’s Coding Assistant.
❤1
💡Чому сповіщення на macOS відображаються догори дриґом
Чудове технічне розслідування рідкісного бага, який випадково відтворювався в macOS-застосунку ChatGPT — сповіщення з’являлися перевернутими. У процесі дебагу автор занурюється в нетривіальні нюанси Core Animation, розбирає поведінку
🇺🇦 iOSDevUA
Чудове технічне розслідування рідкісного бага, який випадково відтворювався в macOS-застосунку ChatGPT — сповіщення з’являлися перевернутими. У процесі дебагу автор занурюється в нетривіальні нюанси Core Animation, розбирає поведінку
CALayer і показує, як подібні візуальні аномалії взагалі можуть виникати.🇺🇦 iOSDevUA
❤1
💡Observable-класи в ієрархії SwiftUI
У матеріалі розглядаються практичні приклади роботи з @Observable-класами в SwiftUI: як правильно їх ініціалізувати, де й як зберігати у стейті, а також які типові помилки можуть виникати. Корисний розбір для тих, хто будує складніші ієрархії в’юшок і хоче уникнути неочевидних багів у керуванні станом.
🇺🇦 iOSDevUA
У матеріалі розглядаються практичні приклади роботи з @Observable-класами в SwiftUI: як правильно їх ініціалізувати, де й як зберігати у стейті, а також які типові помилки можуть виникати. Корисний розбір для тих, хто будує складніші ієрархії в’юшок і хоче уникнути неочевидних багів у керуванні станом.
🇺🇦 iOSDevUA
Nil Coalescing
Initializing @Observable classes within the SwiftUI hierarchy
Learn the recommended ways to initialize and store @Observable classes in SwiftUI views, and see what can go wrong when observable state is managed incorrectly.
❤1
💡Non-exhaustive enums у Swift 6.2.3
У Swift 6.2.3 з’явиться важливе покращення для
🇺🇦 iOSDevUA
У Swift 6.2.3 з’явиться важливе покращення для
enum, особливо корисне авторам бібліотек: тепер можна додавати нові кейси, не ламаючи зворотну сумісність. Це спрощує еволюцію API та зменшує ризик брейкінг-змін для користувачів бібліотек.🇺🇦 iOSDevUA
GitHub
swift-evolution/proposals/0487-extensible-enums.md at main · swiftlang/swift-evolution
This maintains proposals for changes and user-visible enhancements to the Swift Programming Language. - swiftlang/swift-evolution
❤4
💡FAQ про Swift на Android
Розбір найпоширеніших запитань, що з’явилися після анонсу Swift для Android:
👉 Swift компілюється у машинний код, постачається з нативним рантаймом і стандартною бібліотекою, а для доступу до платформених можливостей Android використовує Java interop через Android Runtime.
👉 Продакшн-кейси вже існують: поштовий клієнт Spark, тренер гри на піаніно Flowkey та маркетплейс продуктів Naturitas.
👉 Дорожня карта розвитку зібрана на публічній борді — серед пріоритетів нормальна робота у VS Code та Android Studio.
👉 UI — не в фокусі робочої групи: мета — шаринг бізнес-логіки. Проєкти UI від спільноти можна подивитися тут: https://forums.swift.org/t/swift-gui-toolkits-for-android/83337.
🇺🇦 iOSDevUA
Розбір найпоширеніших запитань, що з’явилися після анонсу Swift для Android:
👉 Swift компілюється у машинний код, постачається з нативним рантаймом і стандартною бібліотекою, а для доступу до платформених можливостей Android використовує Java interop через Android Runtime.
👉 Продакшн-кейси вже існують: поштовий клієнт Spark, тренер гри на піаніно Flowkey та маркетплейс продуктів Naturitas.
👉 Дорожня карта розвитку зібрана на публічній борді — серед пріоритетів нормальна робота у VS Code та Android Studio.
👉 UI — не в фокусі робочої групи: мета — шаринг бізнес-логіки. Проєкти UI від спільноти можна подивитися тут: https://forums.swift.org/t/swift-gui-toolkits-for-android/83337.
🇺🇦 iOSDevUA
Swift.org
Exploring the Swift SDK for Android
Since the announcement of the preview Swift SDK for Android,
the Android workgroup has seen a lot of interest in how it works and what’s next.
Please read on for some answers to common questions about the technology and its
future, and try out the new Swift…
the Android workgroup has seen a lot of interest in how it works and what’s next.
Please read on for some answers to common questions about the technology and its
future, and try out the new Swift…
This media is not supported in your browser
VIEW IN TELEGRAM
💡Як ваш застосунок впливає на батарею
Якщо раптом пропустили: в останній версії iOS у Control Center з’явилася можливість запускати профілювання застосунку прямо на пристрої. Тепер можна безпосередньо на телефоні подивитися, як саме ваш app споживає енергію і який вплив має на заряд батареї — без підключення до Mac чи Instruments.
🇺🇦 iOSDevUA
Якщо раптом пропустили: в останній версії iOS у Control Center з’явилася можливість запускати профілювання застосунку прямо на пристрої. Тепер можна безпосередньо на телефоні подивитися, як саме ваш app споживає енергію і який вплив має на заряд батареї — без підключення до Mac чи Instruments.
🇺🇦 iOSDevUA
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
💡 Cause & Effect Graph для SwiftUI
У Xcode 26 з’явився новий профайлер для SwiftUI — Cause & Effect Graph. Він дозволяє для будь-якої в’юшки побачити, які саме зміни стану спричинили кожен перерендер. Дуже наочний інструмент для дебагу зайвих оновлень і оптимізації продуктивності інтерфейсу.
🇺🇦 iOSDevUA
У Xcode 26 з’явився новий профайлер для SwiftUI — Cause & Effect Graph. Він дозволяє для будь-якої в’юшки побачити, які саме зміни стану спричинили кожен перерендер. Дуже наочний інструмент для дебагу зайвих оновлень і оптимізації продуктивності інтерфейсу.
🇺🇦 iOSDevUA
❤3
💡Як влаштований NSVisualEffectView
Автор статті хотів відтворити вигляд панелей у macOS Control Center у власному застосунку. Для цього йому довелося зайнятися реверс-інжинірингом нативного NSVisualEffectView та створити повністю кастомізовану реалізацію, яку можна детально вивчити на GitHub.
🇺🇦 iOSDevUA
Автор статті хотів відтворити вигляд панелей у macOS Control Center у власному застосунку. Для цього йому довелося зайнятися реверс-інжинірингом нативного NSVisualEffectView та створити повністю кастомізовану реалізацію, яку можна детально вивчити на GitHub.
🇺🇦 iOSDevUA
😁1
💡 Ховаємо SwiftUI?
Напередодні Нового року в Twitter знову активізувалися розмови про те, що команда SwiftUI нібито програє внутрішню «політичну» боротьбу в Apple. Звідки ростуть ноги у цієї думки, зокрема з цього треду:
👉 На WWDC цього року SwiftUI просували помітно менше, ніж раніше, зате значно більше сесій показували приклади на UIKit.
👉 В одному з ключових SwiftUI-застосунків Apple — Photos.app — в iOS 26 частину коду та інфраструктури переписали назад на UIKit.
У статті за посиланням автор наводить ще більше аргументів на користь того, що UIKit у 2026 році став достатньо сильним і зрілим вибором, тоді як SwiftUI, на його думку, починає поступово здавати позиції.
🇺🇦 iOSDevUA
Напередодні Нового року в Twitter знову активізувалися розмови про те, що команда SwiftUI нібито програє внутрішню «політичну» боротьбу в Apple. Звідки ростуть ноги у цієї думки, зокрема з цього треду:
👉 На WWDC цього року SwiftUI просували помітно менше, ніж раніше, зате значно більше сесій показували приклади на UIKit.
👉 В одному з ключових SwiftUI-застосунків Apple — Photos.app — в iOS 26 частину коду та інфраструктури переписали назад на UIKit.
У статті за посиланням автор наводить ще більше аргументів на користь того, що UIKit у 2026 році став достатньо сильним і зрілим вибором, тоді як SwiftUI, на його думку, починає поступово здавати позиції.
🇺🇦 iOSDevUA
Jacobstechtavern
2025: The year SwiftUI died
Rediscovering my love for the Classic UIKit Stack™
👍2