💡Розробник iOS-застосунка менеджер рецептів Crouton — поділився списком фіч, створених поверх Foundation Model Framework. І виглядають вони справді корисними:
👉 Автоматичне перетворення рецепта з одного суцільного тексту у структурований список кроків.
👉 Пропозиції релевантних тегів для швидкої категоризації.
👉 Іменовані таймери, які підлаштовуються під конкретний етап приготування.
Такі функції чудово ілюструють, як AI може покращити юзерський досвід у повсякденних застосунках — тут не про абстрактні демо, а про практичні можливості, які реально полегшують життя користувача.
🇺🇦 iOSDevUA
👉 Автоматичне перетворення рецепта з одного суцільного тексту у структурований список кроків.
👉 Пропозиції релевантних тегів для швидкої категоризації.
👉 Іменовані таймери, які підлаштовуються під конкретний етап приготування.
Такі функції чудово ілюструють, як AI може покращити юзерський досвід у повсякденних застосунках — тут не про абстрактні демо, а про практичні можливості, які реально полегшують життя користувача.
🇺🇦 iOSDevUA
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
📦 Керуємо симуляторами через CLI
AXe — це консольний тул для керування iOS-симулятором через механізми accessibility. З його допомогою можна емулявати натискання, вводити текст, виконувати жести та багато інших дій прямо з терміналу.
Чому це корисно
• Дозволяє автоматизувати тестування інтерфейсів і поведінки застосунку.
• Підтримує широкий набір команд, які імітують дії користувача.
• Може бути інтегрований у пайплайни CI/CD або використаний для експериментів із AI-агентами, які зможуть самостійно перевіряти роботу вашої апки.
🚀 Виглядає як потужний інструмент для тих, хто хоче підняти автоматизацію тестів на новий рівень і делегувати рутинні перевірки агентам або скриптам.
🇺🇦 iOSDevUA
AXe — це консольний тул для керування iOS-симулятором через механізми accessibility. З його допомогою можна емулявати натискання, вводити текст, виконувати жести та багато інших дій прямо з терміналу.
Чому це корисно
• Дозволяє автоматизувати тестування інтерфейсів і поведінки застосунку.
• Підтримує широкий набір команд, які імітують дії користувача.
• Може бути інтегрований у пайплайни CI/CD або використаний для експериментів із AI-агентами, які зможуть самостійно перевіряти роботу вашої апки.
🚀 Виглядає як потужний інструмент для тих, хто хоче підняти автоматизацію тестів на новий рівень і делегувати рутинні перевірки агентам або скриптам.
🇺🇦 iOSDevUA
This media is not supported in your browser
VIEW IN TELEGRAM
💡Реалізація перетягування елементів у SwiftUI
Застосувань цьому механізму безліч: від впорядкування фото в альбомах до побудови таск-менеджера на кшталт Trello.
Підхід із використанням стандартних модифікаторів onDrag та onDrop має низку переваг.
Зокрема, коли нам важлива робота з даними (а не лише візуальне пересування елементів) і коли застосунок оперує складними структурами даних.
📖 У цьому матеріалі — покрокова реалізація на реальному прикладі, яка демонструє, як організувати drag & drop із коректним оновленням моделі.
🇺🇦 iOSDevUA
Застосувань цьому механізму безліч: від впорядкування фото в альбомах до побудови таск-менеджера на кшталт Trello.
Підхід із використанням стандартних модифікаторів onDrag та onDrop має низку переваг.
Зокрема, коли нам важлива робота з даними (а не лише візуальне пересування елементів) і коли застосунок оперує складними структурами даних.
📖 У цьому матеріалі — покрокова реалізація на реальному прикладі, яка демонструє, як організувати drag & drop із коректним оновленням моделі.
🇺🇦 iOSDevUA
❤3
💡Підтримка автодоповнення в Swift Argument Parser
Swift Argument Parser — бібліотека для створення CLI-утиліт на Swift із зручними механізмами опису вхідних параметрів. І найприємніше: якщо ви вже її використовуєте, майже «задарма» отримуєте автокомпліт команд і їхніх аргументів у терміналі. Це помітно пришвидшує роботу й зменшує кількість помилок у ввідних параметрах.
🇺🇦 iOSDevUA
Swift Argument Parser — бібліотека для створення CLI-утиліт на Swift із зручними механізмами опису вхідних параметрів. І найприємніше: якщо ви вже її використовуєте, майже «задарма» отримуєте автокомпліт команд і їхніх аргументів у терміналі. Це помітно пришвидшує роботу й зменшує кількість помилок у ввідних параметрах.
🇺🇦 iOSDevUA
www.swifttoolkit.dev
Hidden Gems in the Swift Argument Parser - Part I
Discover lesser-known features: shell completion scripts and improving completion suggestions
💡AppMigrationKit — новий фреймворк для перенесення даних на Android
Експансія Apple триває: щойно анонсували фреймворк для експорту даних застосунку на інший пристрій або імпорту з іншої платформи.
Щоб брати участь у кросплатформенній міграції, потрібно зробити розширення, що відповідає протоколу AppMigrationExtension і принаймні одному з його підпротоколів. Вони визначають, чи застосунок імпортує, експортує, або робить обидва.
Поки деталей небагато, але ключові умови вже відомі:
• AppMigrationKit підтримує міграцію лише з/на не-Apple платформи (наприклад, Android).
• Система не використовує фреймворк для перенесення між пристроями iOS чи iPadOS.
• Немає функціональності у додатках iOS, що працюють у visionOS або macOS на Apple silicon.
• Виклики з Mac Catalyst ігноруються.
📖 Інші подробиці — в офіційній документації: https://developer.apple.com/documentation/appmigrationkit.
🇺🇦 iOSDevUA
Експансія Apple триває: щойно анонсували фреймворк для експорту даних застосунку на інший пристрій або імпорту з іншої платформи.
Щоб брати участь у кросплатформенній міграції, потрібно зробити розширення, що відповідає протоколу AppMigrationExtension і принаймні одному з його підпротоколів. Вони визначають, чи застосунок імпортує, експортує, або робить обидва.
Поки деталей небагато, але ключові умови вже відомі:
• AppMigrationKit підтримує міграцію лише з/на не-Apple платформи (наприклад, Android).
• Система не використовує фреймворк для перенесення між пристроями iOS чи iPadOS.
• Немає функціональності у додатках iOS, що працюють у visionOS або macOS на Apple silicon.
• Виклики з Mac Catalyst ігноруються.
📖 Інші подробиці — в офіційній документації: https://developer.apple.com/documentation/appmigrationkit.
🇺🇦 iOSDevUA
Apple Developer Documentation
AppMigrationKit | Apple Developer Documentation
Perform a one-time transfer of your app’s on-device data to or from a device running another platform.
💡Немає нічого гіршого за Xcode
Якщо раптом забули — ось нагадування: мало хто робить гірший дев-тулчейн, ніж Apple, і з роками ситуація, здається, лише погіршується.
🇺🇦 iOSDevUA
Якщо раптом забули — ось нагадування: мало хто робить гірший дев-тулчейн, ніж Apple, і з роками ситуація, здається, лише погіршується.
🇺🇦 iOSDevUA
🤡1
💡Створення кастомних контролів у SwiftUI
У порівнянні з UIKit сьогодні набагато простіше зібрати власний елемент керування — під будь-які потреби.
Джордан Морган пропонує підхід, де кожен контрол має відповідати трьом правилам:
1️⃣ Легко вивчити — якщо взаємодія неочевидна, користувачі нею не користуватимуться.
2️⃣ Запам’ятовуваність — якщо немає сильної причини відходити від системного UI, варто двічі подумати, перш ніж робити своє.
3️⃣ Доступність — елемент має працювати для всіх; якщо це неможливо, можливо, його не слід реалізовувати.
🇺🇦 iOSDevUA
У порівнянні з UIKit сьогодні набагато простіше зібрати власний елемент керування — під будь-які потреби.
Джордан Морган пропонує підхід, де кожен контрол має відповідати трьом правилам:
1️⃣ Легко вивчити — якщо взаємодія неочевидна, користувачі нею не користуватимуться.
2️⃣ Запам’ятовуваність — якщо немає сильної причини відходити від системного UI, варто двічі подумати, перш ніж робити своє.
3️⃣ Доступність — елемент має працювати для всіх; якщо це неможливо, можливо, його не слід реалізовувати.
🇺🇦 iOSDevUA
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
💡Легка демонстрація «липкого» ефекту в SwiftUI
📖 Мінсан Чой поділився оригінальним підходом до реалізації gooey-ефекту в інтерфейсі — і все це без Metal 😉
Дивитися пост
🛠 Вихідний код доступний на GitHub:
radiofun/gooeyblobs — Gooey.swift.
🇺🇦 iOSDevUA
📖 Мінсан Чой поділився оригінальним підходом до реалізації gooey-ефекту в інтерфейсі — і все це без Metal 😉
Дивитися пост
🛠 Вихідний код доступний на GitHub:
radiofun/gooeyblobs — Gooey.swift.
🇺🇦 iOSDevUA
❤11
💡Чому зміна розміру зображень на macOS у 5 разів повільніша, ніж на iOS
Дуже якісне пояснення, чому ресайз через
🇺🇦 iOSDevUA
Дуже якісне пояснення, чому ресайз через
NSImage на macOS займає неприйнятно багато часу, тоді як у симуляторі iOS все працює блискавично. Розбір причин і більш швидких підходів (зокрема через CGImageSource) — всередині.🇺🇦 iOSDevUA
Max Seelemann
Fast Thumbnails with CGImageSource
When working with images, we rarely need to show them at full size — most often ist’s rather as a thumbnail or preview. Using fully loaded images for this is quite slow, so we implemented a thumbnail cache.
While modernizing this component, I remembered…
While modernizing this component, I remembered…
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
💡Відтворюємо ефект Apple Intelligence — розбір + код
В новій iOS можна помітити анімований контурний «glow», який динамічно підсвічує форми та компоненти.
📖 У цьому розборі автор пробує відтворити ефект у SwiftUI за допомогою поєднання модифікаторів background і overlay, а також ділиться готовим розширенням:
https://livsycode.com/swiftui/an-apple-intelligence-style-glow-effect-in-swiftui/
🛠 Код доступний тут:
https://github.com/Livsy90/IntelligenceGlow/tree/main
🇺🇦 iOSDevUA
В новій iOS можна помітити анімований контурний «glow», який динамічно підсвічує форми та компоненти.
📖 У цьому розборі автор пробує відтворити ефект у SwiftUI за допомогою поєднання модифікаторів background і overlay, а також ділиться готовим розширенням:
https://livsycode.com/swiftui/an-apple-intelligence-style-glow-effect-in-swiftui/
🛠 Код доступний тут:
https://github.com/Livsy90/IntelligenceGlow/tree/main
🇺🇦 iOSDevUA
💡Swift Profile Recorder
В екосистемі серверного Swift з’являються нові офіційні інструменти. Цього разу — in-process профілювальник, який просто вбудовується в будь-який сервіс і віддає результати профілювання через cURL-запити. Ідеально для швидкої діагностики продуктивності без складного оверхеду.
🇺🇦 iOSDevUA
В екосистемі серверного Swift з’являються нові офіційні інструменти. Цього разу — in-process профілювальник, який просто вбудовується в будь-який сервіс і віддає результати профілювання через cURL-запити. Ідеально для швидкої діагностики продуктивності без складного оверхеду.
🇺🇦 iOSDevUA
Swift.org
Introducing Swift Profile Recorder: Identifying Performance Bottlenecks in Production
Swift Profile Recorder, an in-process sampling profiler for Swift services, is now available as an open source project.
💡Кешування зображень у SwiftUI
Ще з iOS 15 з’явився дуже корисний
У таких випадках без кешу не обійтися. Часто бачу, як заради цього підтягують зайві залежності, хоча все значно простіше — особливо, якщо нам достатньо кешу лише в пам’яті (а запис на диск додає не так вже й багато складності).
📖 У цій статті розглянуто базовий, але дієвий підхід із використанням NSCache та його налаштування — чудово підходить для новачків:
https://www.createwithswift.com/image-caching-in-swiftui/
🇺🇦 iOSDevUA
Ще з iOS 15 з’явився дуже корисний
AsyncImage (дозволяє завантажувати картинки без блокування інтерфейсу), але є нюанс: під час швидкого скролу вгору-вниз зображення може завантажуватися повторно.У таких випадках без кешу не обійтися. Часто бачу, як заради цього підтягують зайві залежності, хоча все значно простіше — особливо, якщо нам достатньо кешу лише в пам’яті (а запис на диск додає не так вже й багато складності).
📖 У цій статті розглянуто базовий, але дієвий підхід із використанням NSCache та його налаштування — чудово підходить для новачків:
https://www.createwithswift.com/image-caching-in-swiftui/
🇺🇦 iOSDevUA
💡Як керувати контекстом у Foundation Models
Дуже докладні Tech Notes від Apple про найкращі практики оптимізації малого контекстного вікна локальної LLM: як стискати підказки, прибирати зайве, використовувати резюме та ключові токени, щоб умістити максимум корисних даних.
🇺🇦 iOSDevUA
Дуже докладні Tech Notes від Apple про найкращі практики оптимізації малого контекстного вікна локальної LLM: як стискати підказки, прибирати зайве, використовувати резюме та ключові токени, щоб умістити максимум корисних даних.
🇺🇦 iOSDevUA
Apple Developer Documentation
TN3193: Managing the on-device foundation model’s context window | Apple Developer Documentation
Learn how to budget for the context window limit of Apple’s on-device foundation model and handle the error when reaching the limit.
📦 xcsift — оптимізація логів Xcode для AI
Контекст — водночас найкорисніший і найдорожчий ресурс у роботі з AI-агентами: надто великий контекст погіршує якість відповіді й підвищує вартість кожного запиту до LLM.
xcsift — це CLI-утиліта, що перетворює логи xcodebuild на короткий, зрозумілий JSON із усією ключовою інформацією. Менше шуму → менше токенів → дешевші й точніші AI-ітерації.
🇺🇦 iOSDevUA
Контекст — водночас найкорисніший і найдорожчий ресурс у роботі з AI-агентами: надто великий контекст погіршує якість відповіді й підвищує вартість кожного запиту до LLM.
xcsift — це CLI-утиліта, що перетворює логи xcodebuild на короткий, зрозумілий JSON із усією ключовою інформацією. Менше шуму → менше токенів → дешевші й точніші AI-ітерації.
🇺🇦 iOSDevUA
❤2
💡Приклади використання Foundation Models Framework
Нещодавно я ділився прикладом з улюбленого застосунку рецептів, де Foundation Models допомагають структурувати контент. А Apple підготувала свою добірку кейсів: від спрощеного логування силових тренувань до підбору музики за вмістом відео — все прямо на пристрої з повагою до приватності.
🇺🇦 iOSDevUA
Нещодавно я ділився прикладом з улюбленого застосунку рецептів, де Foundation Models допомагають структурувати контент. А Apple підготувала свою добірку кейсів: від спрощеного логування силових тренувань до підбору музики за вмістом відео — все прямо на пристрої з повагою до приватності.
🇺🇦 iOSDevUA
Apple Newsroom
Apple’s Foundation Models framework unlocks new intelligent app experiences
Developers around the world are able to bring even more intelligent experiences into their apps by tapping into Apple’s Foundation Models framework.
💡Swift Transformers 1.0
Бібліотека swift-transformers від Hugging Face, що спрощує роботу з локальними LLM на Swift, отримала перший стабільний реліз. Окрім базових примітивів для інференсу й керування моделями, з її допомогою можна завантажувати та піднімати в пам’яті будь-які моделі з Hugging Face.
🇺🇦 iOSDevUA
Бібліотека swift-transformers від Hugging Face, що спрощує роботу з локальними LLM на Swift, отримала перший стабільний реліз. Окрім базових примітивів для інференсу й керування моделями, з її допомогою можна завантажувати та піднімати в пам’яті будь-які моделі з Hugging Face.
🇺🇦 iOSDevUA
huggingface.co
Swift Transformers Reaches 1.0 – and Looks to the Future
We’re on a journey to advance and democratize artificial intelligence through open source and open science.
💡Memory Integrity Enforcement — нова технологія безпеки від Apple
Наші пристрої зберігають багато конфіденційних даних, тож їх потрібно захищати. Якщо у застосунку є вразливості, зловмисники можуть використати їх, аби дістатися до даних у вашому app або його розширеннях.
Багато команд проходять регулярні аудити безпеки й перевіряють джейлбрейк чи наявність підозрілих процесів. Нещодавно в Xcode з’явилася опція Enhanced Security (її можна увімкнути в проєкті), що допомагає прибрати чимало поширених ризиків.
Тепер Apple представила Memory Integrity Enforcement (MIE) — підхід, який не лише підсилює захист, а й допомагає виявляти складні для діагностики помилки роботи з пам’яттю та усувати їх у коді.
📺 Переглянути сесію можна на сайті Apple або на YouTube.
📖 Додатковий розбір.
🇺🇦 iOSDevUA
Наші пристрої зберігають багато конфіденційних даних, тож їх потрібно захищати. Якщо у застосунку є вразливості, зловмисники можуть використати їх, аби дістатися до даних у вашому app або його розширеннях.
Багато команд проходять регулярні аудити безпеки й перевіряють джейлбрейк чи наявність підозрілих процесів. Нещодавно в Xcode з’явилася опція Enhanced Security (її можна увімкнути в проєкті), що допомагає прибрати чимало поширених ризиків.
Тепер Apple представила Memory Integrity Enforcement (MIE) — підхід, який не лише підсилює захист, а й допомагає виявляти складні для діагностики помилки роботи з пам’яттю та усувати їх у коді.
📺 Переглянути сесію можна на сайті Apple або на YouTube.
📖 Додатковий розбір.
🇺🇦 iOSDevUA
Apple Developer
Secure your app with Memory Integrity Enforcement - Meet With Apple - Videos - Apple Developer
Discover Memory Integrity Enforcement (MIE), a new security technology where hardware, the operating system, and the compiler work...
💡Про увагу до деталей від Apple
З кожним новим релізом macOS та iOS легендарна «увага до дрібниць» у Apple, здається, тане. Останній випуск із Liquid Glass лише погіршив ситуацію — як у загальному UX, так і за планкою якості. У статті — найпоказовіші приклади того, наскільки все просіло.
🇺🇦 iOSDevUA
З кожним новим релізом macOS та iOS легендарна «увага до дрібниць» у Apple, здається, тане. Останній випуск із Liquid Glass лише погіршив ситуацію — як у загальному UX, так і за планкою якості. У статті — найпоказовіші приклади того, наскільки все просіло.
🇺🇦 iOSDevUA
💯3
💡Створення UIKit-застосунку зі стилем Liquid Glass
Більшість великих проєктів поки не переходять на нову стилістику, але деякі топ-апки (наприклад, Telegram) уже частково оновлюють ключові компоненти.
Якщо дизайн поки оновлювати не плануєте — нещодавно я писав, як вимкнути «скляний» стиль для ваших проєктів.
А от якщо ви готуєтеся адоптити можливості iOS 26, варто знати кілька порад.
Наприклад, щоб прибрати ефект скла для кнопок у навбарі, можна використати hidesSharedBackground
А щоб візуально розділити групи кнопок, додайте .fixedSpace().
📖 Ще більше корисних фіч — у цьому розборі:
https://appcircle.io/blog/wwdc25-build-a-uikit-app-with-the-new-liquid-glass-design.
Перехід у будь-якому разі буде не надто швидким (потрібно підтримувати і старі опції), але, як бачимо, для UIKit нові можливості цілком реально впроваджувати вже зараз.
🇺🇦 iOSDevUA
Більшість великих проєктів поки не переходять на нову стилістику, але деякі топ-апки (наприклад, Telegram) уже частково оновлюють ключові компоненти.
Якщо дизайн поки оновлювати не плануєте — нещодавно я писав, як вимкнути «скляний» стиль для ваших проєктів.
А от якщо ви готуєтеся адоптити можливості iOS 26, варто знати кілька порад.
Наприклад, щоб прибрати ефект скла для кнопок у навбарі, можна використати hidesSharedBackground
А щоб візуально розділити групи кнопок, додайте .fixedSpace().
📖 Ще більше корисних фіч — у цьому розборі:
https://appcircle.io/blog/wwdc25-build-a-uikit-app-with-the-new-liquid-glass-design.
Перехід у будь-якому разі буде не надто швидким (потрібно підтримувати і старі опції), але, як бачимо, для UIKit нові можливості цілком реально впроваджувати вже зараз.
🇺🇦 iOSDevUA