🇺🇦 iOS Dev UA - спільнота iOS розробників
384 subscribers
398 photos
42 videos
9 files
957 links
Перша україномовна спільнота iOS розробників 🇺🇦

👨‍💻Цікаві матеріали зі світу розробки для продуктів Apple.
Статті по розробці на Swift та SwiftUI. Огляд нових технологій в розробці від Apple.

чат: @iOSDevsUAChat
Ідеї та пропозиції: @SergeyZhuravel
Download Telegram
📖 Поради щодо Universal Links

👉 Обов’язково валідуйте ваш AASA-файл проти JSON-схеми прямо на CI.
👉 Apple може легко закешувати некоректну версію файлу на своїх CDN — тому завжди переперевіряйте, що роздається назовні.
👉 Існуючі інструменти погано парсять wildcard-синтаксис Apple, тож, ймовірно, доведеться писати власний парсер.
👉 Тестуйте на реальному staging-домені з HTTPS, а не лише локально.
👉 Слідкуйте за кодуванням і не використовуйте percent encoding — це часто ламає матчинг.

🇺🇦 iOSDevUA
📖 Гайд з промптингу локальних моделей у Foundation Models Framework

Apple опублікувала офіційну документацію про те, як правильно писати промпти для моделей, доступних через Foundation Models Framework. У гайді пояснюють, як формулювати запити так, щоб модель краще дотримувалась інструкцій, а також коли варто виносити умовну логіку в код, замість того щоб намагатися «впихнути» її в промпт.

🇺🇦 iOSDevUA
2
💡Swift Community Showcase — цікаві проєкти й досягнення екосистеми

На Swift Forums розробники регулярно діляться своїми проєктами, підходами та ідеями, як використовувати звичні інструменти у складних системах. Ділюся добіркою за минулий місяць:

🔗 A little brother for Swift Argument Parser
Легкий альтернативний парсер аргументів для CLI.

🔗 Swift Context Management
Пакет для ефективнішої роботи з контекстом і лімітами токенів у Swift-застосунках.

🔗 Modern DI for Swift Concurrency
Сучасна DI-бібліотека, спроєктована під Swift Concurrency та SwiftUI.

🔗 monocle
CLI для агентів: дозволяє інспектити Swift-символи через SourceKit-LSP.

🔗 TaylorTorch: сучасний Swift-врапер для LibTorch
Дозволяє використовувати потужність PyTorch у нативних Swift-застосунках.

🇺🇦 iOSDevUA
📖 У Xcode з’явилися агенти

Цього тижня несподівано вийшло велике оновлення Xcode 26.3, і в ньому нарешті додали справді робочу інтеграцію з агентами на кшталт OpenAI Codex та Anthropic Claude Agent. Тепер агент може не лише підказувати код, а й взаємодіяти з можливостями Xcode: шукати файли, запускати збірку та тести, працювати з прев’ю й навіть підказувати по документації Apple — список доступних дій Apple показує прямо в матеріалах релізу.

А якщо вам зручніше керувати агентами з іншого інтерфейсу (CLI, іншої IDE тощо), Xcode відкриває ці можливості через Model Context Protocol (MCP) — тобто можна підключати будь-які сумісні інструменти й агенти.

🇺🇦 iOSDevUA
2
📖 Архітектура SwiftUI у 2025: MVVM, MVC чи TCA — що обрати?

Вибір архітектури для SwiftUI трохи схожий на вибір програми тренувань: кожен “експерт” переконує, що саме його підхід — найкращий. Але варто піти не тим шляхом, і є реальний шанс, що проєкт швидко розростеться у щось хаотичне та важке в підтримці.

Саме з такої позиції автор підходить до теми й намагається тверезо порівняти MVVM, MVC та TCA: що дає кожен підхід, у чому їхні сильні/слабкі сторони і коли який варіант реально доречний.

Його висновки та рекомендації — у статті за посиланням.

🇺🇦 iOSDevUA
📖 FabBar — «правильний» Liquid Glass TabBar

Пам’ятаєте недавній матеріал про те, що не так із таббаром у стилі Liquid Glass?

Автор не зупинився лише на критиці й випустив FabBar — кастомний компонент, який виправляє одну з найпомітніших проблем: «кнопку дії», що відокремлюється збоку й провокує плутанину у взаємодії.

🛠 Репозиторій: https://github.com/ryanashcraft/FabBar

🇺🇦 iOSDevUA
2👍1
💡Нових застосунків в App Store стало помітно більше

Вперше за багато років кількість нових застосунків, що з’являються в App Store щомісяця, відчутно зросла. Багато хто пов’язує цей стрибок із тим, що завдяки AI-агентам створювати й запускати застосунки стало значно простіше — менше ручної рутини, швидше прототипування і коротший шлях до релізу.

🇺🇦 iOSDevUA
📖 Як працює генерація UUID у Swift

У статті розбирають три основні підходи до створення UUID: на основі таймстемпа, через випадковість, а також гібридні варіанти, які поєднують обидва принципи. Корисний розбір, якщо хочете краще розуміти, звідки береться унікальність і які компроміси стоять за різними версіями UUID.

🇺🇦 iOSDevUA
👍2
💡FlowDeck — CLI-інструменти для iOS-розробки

Все більше коду зараз пишеться не в IDE, а прямо в терміналі — разом із Claude Code, Codex та іншими агентами. Але iOS-стек, як завжди, страждає найбільше: для багатьох задач усе ще потрібен Xcode.

FlowDeck — це набір інструментів, який дозволяє виконувати ключові сценарії iOS-розробки не виходячи з консолі: збирати й запускати застосунок, ганяти тести, керувати симуляторами, програмно взаємодіяти з UI, стрімити логи та багато іншого. Все продумано так, щоб цим було зручно користуватись не лише людям, а й агентам.

Поки сервіс платний, але є безкоштовний тріал — можна спробувати й вирішити, чи воно вам потрібно.

🇺🇦 iOSDevUA
🔥2🤣1
📖 Робота з Xcode MCP

Дуже детальний гайд про те, як налаштувати вбудований MCP-сервер у новому Xcode, підключити його до Claude Code / Cursor та розібратися з нюансами роботи всіх доступних інструментів. Корисно, якщо хочете керувати Xcode «ззовні» й максимально використати агентний workflow.

🇺🇦 iOSDevUA
👍3🔥2
💡Дуже крутий і детальний матеріал про те, як додати у свій проєкт креативні анімації та нестандартні візуальні ефекти. Багато красивих прикладів, плюс пояснення, як працювати з рандомом і noise, щоб отримувати «живі» рухи та цікаві композиції

👉 https://www.createwithswift.com/creative-coding-randomness-and-noise/

🇺🇦 iOSDevUA
2
💡Якщо ви вже пишете з агентами (Cursor/Claude) і втомилися раз по раз виправляти одні й ті самі SwiftUI-косяки — ось практичний підхід: автор виніс «правила хорошого SwiftUI» у перевикористовуваний skill, який агент реально читає та враховує під час генерації коду. Усередині також є список конкретних anti-patterns (скрол, state, продуктивність), які часто вилітають боком уже на проді. Матеріал невеликий, але дуже прикладний:

👉 https://www.avanderlee.com/ai-development/swiftui-agent-skill-build-better-views-with-ai/

🇺🇦 iOSDevUA
5
📖 Автоматична міграція на Tuist

Команда Tuist спробувала перенести великий open-source проєкт із нетривіальною структурою xcodeproj на Tuist, фактично делегувавши міграцію Codex. У підсумку все спрацювало — знадобилися лише невеликі правки по ходу.

Тож якщо ви давно хотіли спробувати Tuist, але вас зупиняла складність міграції, можна взяти готовий «скіл», поставити задачу агенту, а потім уже спокійно порівняти й оцінити результат.

🇺🇦 iOSDevUA
👍1
💡 Swift — це «зручніший Rust»

Swift і Rust доволі близькі за тим, які інструменти дають програмісту і які задачі з їх допомогою можна вирішувати. Обидві мови дозволяють працювати з пам’яттю без компромісів, пов’язаних із GC, за потреби — спускатися на системний рівень і оперувати вказівниками, та мають помітний «функціональний» ухил.

Ключова різниця — у стартовій філософії та типовому способі використання. Rust від початку задумувався як низькорівнева системна мова, яка поступово піднімає рівень абстракції. Swift же навпаки: це високорівнева мова для написання застосунків, яка за потреби дозволяє «пірнути» в системщину і працювати близько до заліза.

🇺🇦 iOSDevUA
👍2
💡Стаття розбирає сучасні патерни навігації у SwiftUI — NavigationStack, NavigationPath, deep linking і архітектурний підхід до навігації в табах. Якщо раніше навігація часто плуталася між NavigationLink і стеками, то тут пояснюють, як зробити її чистою, передбачуваною та масштабованою для великих застосунків.

👉 https://dev.to/sebastienlato/modern-navigation-in-swiftui-1c8g

🇺🇦 iOSDevUA
👍1👀1
💡Практичний гайд зі створення скріншотів для App Store за допомогою Fastlane

Під час оновлення застосунку часто виникає потреба оновити скріншоти в App Store Connect. Робити це вручну на кількох пристроях і різними мовами — довго, нудно й легко припуститися помилок.

На допомогу приходить фіча snapshot у fastlane, яка дозволяє повністю автоматизувати процес створення скріншотів.

📖 У цій статті — покрокова інструкція: від початкового налаштування до відладки та завантаження матеріалів у стор:
👉 https://buczel.com/blog/fastlane-screenshots-ios/

🇺🇦 iOSDevUA
📖 Втома від AI

Попри те, що AI помітно підвищує продуктивність, це зовсім не означає, що ми почали менше втомлюватися. Навпаки — багато людей відзначають, що виснажуються сильніше, ніж раніше. На це впливають кілька факторів:

👉 Кожна окрема задача робиться швидше, тож за день доводиться “проковтувати” значно більше контексту — а це реально втомлює.
👉 Рев’ю коду стало більше, і це не той тип роботи, який додає енергії — швидше навпаки.
👉 Ми звикли до детермінованих систем, а AI — ймовірнісний. Мозку непросто постійно перемикатися на такий режим.
👉 Постійний FOMO через нескінченні анонси нових інструментів, моделей і підходів.
👉 Відчуття, що до успішного фіналу задачі лишився ще один промпт — і ти знову й знову пробуєш “дотиснути”.

🇺🇦 iOSDevUA
4👍2
📖 Використання EventKit для реалізації списків нагадувань

Щоб додати у застосунок кастомні списки нагадувань, можна підключити фреймворк EventKit і організувати їх так, як зручно користувачу — наприклад, за контекстом, проєктами або пріоритетом.

У цій статті можна подивитися приклад реалізації: як створити інтерфейс, як формувати списки та як взаємодіяти із системними «Нагадуваннями»:
👉 https://www.createwithswift.com/creating-reminder-lists-with-eventkit-from-your-app/

🇺🇦 iOSDevUA
👍1
💡SimTag — спрощуємо роботу з кількома гілками

Ймовірно, ви вже так чи інакше пристосувалися працювати одразу над кількома задачами паралельно — з агентами по-іншому буває складно. Тому тримайте SimTag: невеликий інструмент, який трохи полегшить роботу із симуляторами.

Його ідея проста: для кожного запущеного симулятора додається оверлей із назвою гілки, з якої він був запущений. Це допомагає швидко орієнтуватися й не плутатися, коли одночасно відкрито кілька збірок.

🇺🇦 iOSDevUA
🔥1
💡Sentry купує XcodeBuildMCP

XcodeBuildMCP — одна з найживіших і найпрактичніших спроб “винести” можливості Xcode в руки агентів. Попри те, що в самому Xcode вже з’явився схожий сервер, проєкт не зупинився й продовжував активно розвиватися — і тепер Sentry придбала XcodeBuildMCP разом із його автором.

Це виглядає як справді хороша новина: досвід після придбання EmergeTools показує, що Sentry готові серйозно інвестувати в опенсорс і доводити такі інструменти до дуже сильного рівня.

🇺🇦 iOSDevUA
👍2🔥21
💡Скіл для роботи з Core Data

Тримайте ще один корисний скіл до бібліотеки вашого агента — він допоможе робити менше помилок під час роботи з Core Data. А це особливо цінно, бо, як ви пам’ятаєте, у Core Data будь-який “крок убік” часто перетворюється на складні для відлову креші та дивні побічні ефекти.

🇺🇦 iOSDevUA
🔥5