VanishEffect Library - эффект распыления для UI-элементов
VanishEffect Library - библиотека для Android, создающая культовый эффект распыления ("Щелчка Таноса") для элементов пользовательского интерфейса. Работает на OpenGL ES 2.0 с полной поддержкой Jetpack Compose и традиционных XML-макетов. Анимация похожа на анимацию удаления сообщения в Telegram.
Фичи:
• Плавная анимация распада с использованием частиц
• Полная поддержка Jetpack Compose и XML-макетов
• Аппаратное ускорение рендеринга OpenGL
• Простая интеграция по принципу plug-and-play
• Настраиваемые параметры анимации
• Работает с любым элементом пользовательского интерфейса — текстом, изображениями, карточками и сложными макетами
• Легкая и требует минимума зависимостей
VanishEffect Library на GitHub: https://github.com/exjunk/ThanosEffect/
Платформа: Android
⭐️: 2
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
VanishEffect Library - библиотека для Android, создающая культовый эффект распыления ("Щелчка Таноса") для элементов пользовательского интерфейса. Работает на OpenGL ES 2.0 с полной поддержкой Jetpack Compose и традиционных XML-макетов. Анимация похожа на анимацию удаления сообщения в Telegram.
Фичи:
• Плавная анимация распада с использованием частиц
• Полная поддержка Jetpack Compose и XML-макетов
• Аппаратное ускорение рендеринга OpenGL
• Простая интеграция по принципу plug-and-play
• Настраиваемые параметры анимации
• Работает с любым элементом пользовательского интерфейса — текстом, изображениями, карточками и сложными макетами
• Легкая и требует минимума зависимостей
VanishEffect Library на GitHub: https://github.com/exjunk/ThanosEffect/
Платформа: Android
⭐️: 2
Please open Telegram to view this post
VIEW IN TELEGRAM
✍3
•
(iOS Ru) Разбор кода: iOS-приложение для управления личными финансами на Swift. Часть 1•
(iOS En) Showcase: Learn how apps are integrating the new design and Liquid Glass•
(iOS En) Code-along: Start building with Swift and SwiftUI •
(iOS En) iOS Coding Interview: The 5 Formats You Must Know•
(iOS En) Liquid Glass Text View - Converting Text Into Shape - SwiftUI•
(iOS En) Expand Apple’s Foundation Models with Custom Tools and Real Data Access•
(iOS En) Animated Splash Screen for SwiftUI App•
(iOS En) Autoclosures in Swift Explained Simply•
(And En) App performance improvements•
(And En) How to debug and troubleshoot R8 optimizer•
(And En) Boost Android app performance with the R8 optimizer•
(And En) Floating Toolbars In Material3 Expressive•
(And En) Navigation 3 library is now STABLE•
(And En) Gradle Tutorial: Properties and Providers (for Build Engineers)•
(Crs Ru) Хватит страдать! Лёгкий способ бросить оверинжиниринг•
(Crs En) Build a Compose Multiplatform Meme Creator App With Clean Code & MVI•
(Dev Ru) Как устроены АI облака — ИИ, инфраструктура, GPU, NebiusПрошлогодние видео:
•
(iOS Ru) Дейтинг, Swift и Формула-1: от первых шагов в IT до победы в хакатоне•
(iOS Ru) iOS разработка с нуля•
(And Ru) Code Review: вы не поверите, насколько распространены эти ошибки в коде Android-проектов•
(Dev Ru) Всё о лицензиях библиотек, что необходимо знать разработчикуPlease open Telegram to view this post
VIEW IN TELEGRAM
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Как всплывающее окно в WebView съело мои два дня (viewport и с чем его кушать)
Иногда в разработке случается баг, который не просто не даёт спать, а заставляет пересмотреть свои жизненные ценности.
У меня это произошло со скромным всплывающим окном внутри WebView.
Задача была максимально скучной: на экране с WebView пользователь нажимает кнопку “Exit”, а веб-страница показывает попап подтверждения. На старом коде — всё идеально. На браузере — идеально. На новом инфраструктурном слое WebView — попап появляется на миг и тут же закрывается сам, как будто кто-то тайно играет в “крестики” за пользователя.
Статья: https://habr.com/ru/articles/968206/
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Иногда в разработке случается баг, который не просто не даёт спать, а заставляет пересмотреть свои жизненные ценности.
У меня это произошло со скромным всплывающим окном внутри WebView.
Задача была максимально скучной: на экране с WebView пользователь нажимает кнопку “Exit”, а веб-страница показывает попап подтверждения. На старом коде — всё идеально. На браузере — идеально. На новом инфраструктурном слое WebView — попап появляется на миг и тут же закрывается сам, как будто кто-то тайно играет в “крестики” за пользователя.
Статья: https://habr.com/ru/articles/968206/
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Validator - элегантная и типобезопасная валидация входных данных
Validator — это современный лёгкий фреймворк Swift, обеспечивающий элегантную и типобезопасную валидацию входных данных. Созданный на основе мощной системы типов Swift, он легко интегрируется с UIKit и SwiftUI, что упрощает валидацию форм на всех платформах Apple.
Возможности:
• Типобезопасная валидация — использует систему типов Swift для обеспечения безопасности во время компиляции
• Богатый набор правил — встроенные валидаторы для распространённых случаев использования
• Расширяемость — простота создания собственных правил валидации
• Интеграция с UIKit — первоклассная поддержка UITextField и других компонентов UIKit
• SwiftUI Native — обёртки свойств и модификаторы представлений для декларативной валидации
• Управление формами — валидация нескольких полей с централизованным управлением состоянием
• Легковесность — минимальный размер и отсутствие зависимостей
• Протестировано — полное покрытие тестами
Validator на GitHub: https://github.com/space-code/validator
Платформа: iOS
⭐️: 16
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Validator — это современный лёгкий фреймворк Swift, обеспечивающий элегантную и типобезопасную валидацию входных данных. Созданный на основе мощной системы типов Swift, он легко интегрируется с UIKit и SwiftUI, что упрощает валидацию форм на всех платформах Apple.
Возможности:
• Типобезопасная валидация — использует систему типов Swift для обеспечения безопасности во время компиляции
• Богатый набор правил — встроенные валидаторы для распространённых случаев использования
• Расширяемость — простота создания собственных правил валидации
• Интеграция с UIKit — первоклассная поддержка UITextField и других компонентов UIKit
• SwiftUI Native — обёртки свойств и модификаторы представлений для декларативной валидации
• Управление формами — валидация нескольких полей с централизованным управлением состоянием
• Легковесность — минимальный размер и отсутствие зависимостей
• Протестировано — полное покрытие тестами
Validator на GitHub: https://github.com/space-code/validator
Платформа: iOS
⭐️: 16
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Меня снова спросили за Optional
Несмотря на то, что использование Optional самая настоящая рутина для любого iOS-разработчика, в тонкости реализации этого механизма мы погружаемся только при первом знакомстве с языком. Предлагаю чуть углубиться, чтобы уверенно говорить на эту тему с коллегой или интервьюером.
Статья: https://habr.com/ru/articles/968736/
Платформа: iOS/Swift
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Несмотря на то, что использование Optional самая настоящая рутина для любого iOS-разработчика, в тонкости реализации этого механизма мы погружаемся только при первом знакомстве с языком. Предлагаю чуть углубиться, чтобы уверенно говорить на эту тему с коллегой или интервьюером.
Статья: https://habr.com/ru/articles/968736/
Платформа: iOS/Swift
Please open Telegram to view this post
VIEW IN TELEGRAM
Хабр
Меня снова спросили за Optional
Несмотря на то, что использование Optional самая настоящая рутина для любого iOS-разработчика, в тонкости реализации этого механизма мы погружаемся только при первом знакомстве с языком. Предлагаю...
👍1
Кросс-компиляция и запуск консольного Go‑приложения на Android, Windows, macOS и Linux
Я иногда пишу консольные утилиты на Go под Linux. Недавно я освоил кросс-компиляцию, и теперь они прекрасно работают на Android и Windows (и Linux само собой). В статье собран практический опыт кросс‑компиляции, подготовки релизной версии и развёртывания бинарника, плюс несколько подводных камней.
Статья: https://habr.com/ru/companies/ruvds/articles/968178/
Платформа: кроссплатформа
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Я иногда пишу консольные утилиты на Go под Linux. Недавно я освоил кросс-компиляцию, и теперь они прекрасно работают на Android и Windows (и Linux само собой). В статье собран практический опыт кросс‑компиляции, подготовки релизной версии и развёртывания бинарника, плюс несколько подводных камней.
Статья: https://habr.com/ru/companies/ruvds/articles/968178/
Платформа: кроссплатформа
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Simple Flashlight - фонарик для Android
Simple Flashlight - чистый фонарик с ярким дисплеем, настраиваемым стробоскопом и предустановленным режимом SOS.
Яркий дисплей может менять цвет, открывая новые возможности использования. Он пригодится, если вы хотите видеть более удаленные объекты, не ослепляя себя. Благодаря разным цветам вы можете использовать этот светодиодный фонарик, когда находитесь с друзьями или хотите устроить вечеринку. Или вы можете использовать эту функцию, чтобы позвать кого-нибудь на помощь.
Частота стробоскопа может изменяться: от очень быстрого мигания до редкого. Это приложение для быстрого запуска можно настроить в соответствии с вашими потребностями. Вы можете без проблем изменить все функции этого приложения.
Если этот бесплатный фонарик включен через приложение (не через виджет), он не даст устройству перейти в спящий режим. Мощный фонарик может включаться при запуске приложения, но это не обязательно.
Поставляется с виджетом 1x1 с настраиваемым цветом и прозрачностью. Этот виджет поможет вам быстро запустить приложение подсветки в любое время.
Сделан с Material Design и тёмной темой по умолчанию, обеспечивает отличный пользовательский интерфейс для простоты использования. Отсутствие доступа к Интернету обеспечивает большую конфиденциальность, безопасность и стабильность, чем другие приложения.
Не содержит рекламы и ненужных разрешений. Полностью открытый исходный код.
Simple Flashlight на GitHub: https://github.com/FossifyOrg/Flashlight
Платформа: Android
⭐️: 112
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Simple Flashlight - чистый фонарик с ярким дисплеем, настраиваемым стробоскопом и предустановленным режимом SOS.
Яркий дисплей может менять цвет, открывая новые возможности использования. Он пригодится, если вы хотите видеть более удаленные объекты, не ослепляя себя. Благодаря разным цветам вы можете использовать этот светодиодный фонарик, когда находитесь с друзьями или хотите устроить вечеринку. Или вы можете использовать эту функцию, чтобы позвать кого-нибудь на помощь.
Частота стробоскопа может изменяться: от очень быстрого мигания до редкого. Это приложение для быстрого запуска можно настроить в соответствии с вашими потребностями. Вы можете без проблем изменить все функции этого приложения.
Если этот бесплатный фонарик включен через приложение (не через виджет), он не даст устройству перейти в спящий режим. Мощный фонарик может включаться при запуске приложения, но это не обязательно.
Поставляется с виджетом 1x1 с настраиваемым цветом и прозрачностью. Этот виджет поможет вам быстро запустить приложение подсветки в любое время.
Сделан с Material Design и тёмной темой по умолчанию, обеспечивает отличный пользовательский интерфейс для простоты использования. Отсутствие доступа к Интернету обеспечивает большую конфиденциальность, безопасность и стабильность, чем другие приложения.
Не содержит рекламы и ненужных разрешений. Полностью открытый исходный код.
Simple Flashlight на GitHub: https://github.com/FossifyOrg/Flashlight
Платформа: Android
⭐️: 112
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🤣2👍1
Xcode — худшее профессиональное ПО, с которым я когда-либо работал
Xcode ужасен, и об этом много кто говорит. Постоянные ошибки, баги интерфейса, неочевидное поведение и местами плохая документация — всё это мешает спокойно писать код. Вместо работы над проектом приходится искать решения проблем и пытаться починить то, что должно работать из коробки. Ещё одна неприятность на этом пути заключается в том, что Apple не всегда публично рассказывает о багах в Xcode, поэтому надо ещё догадаться, что именно не работает.
В статье автор делится ошибками и «особенностями» Xcode, которые больше всего его раздражают. Главный совет: держитесь подальше от этой IDE и всегда ищите альтернативы.
Статья: https://habr.com/ru/articles/969470/
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Xcode ужасен, и об этом много кто говорит. Постоянные ошибки, баги интерфейса, неочевидное поведение и местами плохая документация — всё это мешает спокойно писать код. Вместо работы над проектом приходится искать решения проблем и пытаться починить то, что должно работать из коробки. Ещё одна неприятность на этом пути заключается в том, что Apple не всегда публично рассказывает о багах в Xcode, поэтому надо ещё догадаться, что именно не работает.
В статье автор делится ошибками и «особенностями» Xcode, которые больше всего его раздражают. Главный совет: держитесь подальше от этой IDE и всегда ищите альтернативы.
Статья: https://habr.com/ru/articles/969470/
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
Делаем неразрывные числа в динамическом тексте
Отображение динамически отформатированных чисел в строках для пользователя является распространённой фичей во многих iOS-приложениях. Ценники, остатки на счёте, минимальные/максимальные суммы и другие числовые значения часто отображаются в составе длинных предложений. Хотя эти строки обычно отображаются корректно, проблемы начинают возникать, когда большое число не помещается на одной строке.
Типичным примером является экран, где пользовательский интерфейс должен адаптироваться как к коротким, так и к длинным числам. Если число достаточно большое, система может разбить его на несколько строк, оставив часть на одной строке, а остаток перенести на следующую. Это создаёт неровный визуальный результат и может затруднить чтение числа.
Статья: https://apptractor.ru/info/articles/delaem-nerazryvnye-chisla-v-dinamicheskom-tekste.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Отображение динамически отформатированных чисел в строках для пользователя является распространённой фичей во многих iOS-приложениях. Ценники, остатки на счёте, минимальные/максимальные суммы и другие числовые значения часто отображаются в составе длинных предложений. Хотя эти строки обычно отображаются корректно, проблемы начинают возникать, когда большое число не помещается на одной строке.
Типичным примером является экран, где пользовательский интерфейс должен адаптироваться как к коротким, так и к длинным числам. Если число достаточно большое, система может разбить его на несколько строк, оставив часть на одной строке, а остаток перенести на следующую. Это создаёт неровный визуальный результат и может затруднить чтение числа.
Статья: https://apptractor.ru/info/articles/delaem-nerazryvnye-chisla-v-dinamicheskom-tekste.html
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
Визуальная отладка с помощью Swift Charts
Этот опыт закрепил важный урок: при создании сложных систем с временным поведением визуальная обратная связь не просто приятна, она крайне важна. Swift Charts позволили легко добавить эту возможность отладки, а вложение нескольких десятков строк кода сэкономило часы слепой отладки. Диаграммы стали не просто фичей, но и инструментом разработки, который продолжает помогать мне проверять новые функции и выявлять регрессии.
Если вы работаете с какими-либо временными рядами данных или алгоритмическим поведением, подумайте о добавлении диаграмм на ранних этапах процесса разработки. В будущем вы будете благодарны.
Статья: https://apptractor.ru/info/articles/vizualnaya-otladka-s-pomoschyu-swift-charts.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Этот опыт закрепил важный урок: при создании сложных систем с временным поведением визуальная обратная связь не просто приятна, она крайне важна. Swift Charts позволили легко добавить эту возможность отладки, а вложение нескольких десятков строк кода сэкономило часы слепой отладки. Диаграммы стали не просто фичей, но и инструментом разработки, который продолжает помогать мне проверять новые функции и выявлять регрессии.
Если вы работаете с какими-либо временными рядами данных или алгоритмическим поведением, подумайте о добавлении диаграмм на ранних этапах процесса разработки. В будущем вы будете благодарны.
Статья: https://apptractor.ru/info/articles/vizualnaya-otladka-s-pomoschyu-swift-charts.html
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Вам следует использовать бета-версии AndroidX
В любом случае, как пользователи библиотеки AndroidX, мы несём общую ответственность за сообщение об ошибках в процессе разработки, чтобы они были исправлены. Нельзя рассчитывать, что их обнаружит кто-то другой. В Cash App у нас очень большая кодовая база, и мы делаем много интересного с помощью этих библиотек. Чтобы максимально эффективно использовать бета-версии, мы планируем продолжать выявлять и сообщать о любых найденных ошибках. Это поможет нам не только поддерживать возможность обновления, но и всем остальным, кто использует эти библиотеки. И, кстати, думаю, вам стоит поступить так же!
Статья: https://apptractor.ru/info/articles/vam-sleduet-ispolzovat-beta-versii-androidx.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
В любом случае, как пользователи библиотеки AndroidX, мы несём общую ответственность за сообщение об ошибках в процессе разработки, чтобы они были исправлены. Нельзя рассчитывать, что их обнаружит кто-то другой. В Cash App у нас очень большая кодовая база, и мы делаем много интересного с помощью этих библиотек. Чтобы максимально эффективно использовать бета-версии, мы планируем продолжать выявлять и сообщать о любых найденных ошибках. Это поможет нам не только поддерживать возможность обновления, но и всем остальным, кто использует эти библиотеки. И, кстати, думаю, вам стоит поступить так же!
Статья: https://apptractor.ru/info/articles/vam-sleduet-ispolzovat-beta-versii-androidx.html
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Стэнфордский университет выпускает CS193p ("Разработка приложений для iOS") – версия весны 2025 года
В курсе есть видео и вспомогательные материалы по первым 6 лекциям курса CS193p (Разработка приложений для iOS с использованием SwiftUI) весеннего семестра 2025 года в Стэнфордском университете. Это курс, который студенты Стэнфорда проходят для изучения основ разработки приложений для iOS. Дополнительные лекции из этого семестра будут опубликованы в ближайшее время.
Курс проходил до выпуска iOS 26 и Xcode 26, но код, написанный в ходе курса, в основном совместим с новыми версиями. Конечно, большим изменением в Xcode 26 является встроенная помощь LLM, а в iOS 26 в пользовательском интерфейсе появился Liquid Glass, поэтому, конечно, ни в одном из этих видео этого нет.
Курс: https://cs193p.stanford.edu/
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
В курсе есть видео и вспомогательные материалы по первым 6 лекциям курса CS193p (Разработка приложений для iOS с использованием SwiftUI) весеннего семестра 2025 года в Стэнфордском университете. Это курс, который студенты Стэнфорда проходят для изучения основ разработки приложений для iOS. Дополнительные лекции из этого семестра будут опубликованы в ближайшее время.
Курс проходил до выпуска iOS 26 и Xcode 26, но код, написанный в ходе курса, в основном совместим с новыми версиями. Конечно, большим изменением в Xcode 26 является встроенная помощь LLM, а в iOS 26 в пользовательском интерфейсе появился Liquid Glass, поэтому, конечно, ни в одном из этих видео этого нет.
Курс: https://cs193p.stanford.edu/
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
Стартовал конкурс Advent of Code 2025
Настало самое чудесное время года. Время, которое можно провести, участвуя в увлекательном конкурсе по программированию.
Каждый декабрь Эрик Вастл публикует Advent of Code, увлекательный набор упражнений по программированию. С 1 по 12 декабря каждый день публикуется по одному заданию.
Задания начинаются с простых и постепенно становятся все сложнее. Вы можете использовать любой язык программирования и любые методы для выполнения упражнений.
Вот сообщества для разработчиков:
• Swift
• Kotlin
Таблица лидеров будет автоматически обновляться, показывая, кто выполнил задачу, и выставляя оценку в зависимости от того, сколько времени у вас на это ушло. Конечно, вы всегда можете игнорировать оценку — это просто для удовольствия!
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Настало самое чудесное время года. Время, которое можно провести, участвуя в увлекательном конкурсе по программированию.
Каждый декабрь Эрик Вастл публикует Advent of Code, увлекательный набор упражнений по программированию. С 1 по 12 декабря каждый день публикуется по одному заданию.
Задания начинаются с простых и постепенно становятся все сложнее. Вы можете использовать любой язык программирования и любые методы для выполнения упражнений.
Вот сообщества для разработчиков:
• Swift
• Kotlin
Таблица лидеров будет автоматически обновляться, показывая, кто выполнил задачу, и выставляя оценку в зависимости от того, сколько времени у вас на это ушло. Конечно, вы всегда можете игнорировать оценку — это просто для удовольствия!
Please open Telegram to view this post
VIEW IN TELEGRAM
Неделя Jetpack Navigation 3
Jetpack Navigation 3 теперь стабилен, и его использование может помочь вам уменьшить технический долг, обеспечить лучшее разделение задач, ускорить разработку функций и поддерживать новые форм-факторы. Google посвящает целую неделю новой библиотеке и поможет вам узнать о Nav3 и начать интегрировать ее в свое приложение.
Вы узнаете о библиотеке в деталях, о том, как выделить в модули код навигации, а также получите множество рецептов кода для типичных случаев использования. В конце недели присоединяйтесь к сессии «Спроси о чем угодно», чтобы эксперты ответили на все ваши вопросы о Nav3. Вот полное расписание:
• Понедельник: Обзор API
• Вторник: Анимации
• Среда: Глубокие ссылки
• Четверг: Модуляризация
• Пятница: Спросите о чем угодно
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Jetpack Navigation 3 теперь стабилен, и его использование может помочь вам уменьшить технический долг, обеспечить лучшее разделение задач, ускорить разработку функций и поддерживать новые форм-факторы. Google посвящает целую неделю новой библиотеке и поможет вам узнать о Nav3 и начать интегрировать ее в свое приложение.
Вы узнаете о библиотеке в деталях, о том, как выделить в модули код навигации, а также получите множество рецептов кода для типичных случаев использования. В конце недели присоединяйтесь к сессии «Спроси о чем угодно», чтобы эксперты ответили на все ваши вопросы о Nav3. Вот полное расписание:
• Понедельник: Обзор API
• Вторник: Анимации
• Среда: Глубокие ссылки
• Четверг: Модуляризация
• Пятница: Спросите о чем угодно
Платформа: Android
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
Навигация на SwiftUI: чего не хватает и как исправить
В статье iOS-разработчик CleverPumpkin Даниил Апальков разбирает ограничения SwiftUI при построении сложной навигации, с которыми команда столкнулась на одном из своих проектов. Он рассказывает, в каких сценариях приходилось подключать UIKit, чтобы сохранять стабильность, показывает варианты подходов и делится выводами, какие инструменты выбирать для контролируемой навигации.
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
В статье iOS-разработчик CleverPumpkin Даниил Апальков разбирает ограничения SwiftUI при построении сложной навигации, с которыми команда столкнулась на одном из своих проектов. Он рассказывает, в каких сценариях приходилось подключать UIKit, чтобы сохранять стабильность, показывает варианты подходов и делится выводами, какие инструменты выбирать для контролируемой навигации.
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
AnyLanguageModel - совместимая по API замена Foundation Models на кастомные модели
AnyLanguageModel - пакет Swift, предоставляющий готовую замену фреймворку Apple Foundation Models с поддержкой кастомных моделей. Всё, что вам нужно сделать, — это изменить оператор импорта:
- import FoundationModels
+ import AnyLanguageModel
Поддерживаемые провайдеры:
• Apple Foundation Models
• Core ML models
• MLX models
• llama.cpp (GGUF models)
• Ollama HTTP API
• Anthropic Messages API
• Google Gemini API
• OpenAI Chat Completions API
• OpenAI Responses API
AnyLanguageModel на GitHub: https://github.com/mattt/AnyLanguageModel
Платформа: iOS
⭐️: 572
AnyLanguageModel - пакет Swift, предоставляющий готовую замену фреймворку Apple Foundation Models с поддержкой кастомных моделей. Всё, что вам нужно сделать, — это изменить оператор импорта:
- import FoundationModels
+ import AnyLanguageModel
struct WeatherTool: Tool {
let name = "getWeather"
let denoscription = "Retrieve the latest weather information for a city"
@Generable
struct Arguments {
@Guide(denoscription: "The city to fetch the weather for")
var city: String
}
func call(arguments: Arguments) async throws -> String {
"The weather in \(arguments.city) is sunny and 72°F / 23°C"
}
}
let model = SystemLanguageModel.default
let session = LanguageModelSession(model: model, tools: [WeatherTool()])
let response = try await session.respond {
Prompt("How's the weather in Cupertino?")
}
print(response.content)Поддерживаемые провайдеры:
• Apple Foundation Models
• Core ML models
• MLX models
• llama.cpp (GGUF models)
• Ollama HTTP API
• Anthropic Messages API
• Google Gemini API
• OpenAI Chat Completions API
• OpenAI Responses API
AnyLanguageModel на GitHub: https://github.com/mattt/AnyLanguageModel
Платформа: iOS
⭐️: 572
👍1
Реверс-инжиниринг приложений на Android: знакомство с Frida
Frida — это инструмент, который позволяет вживлять небольшой кусок JavaScript-кода прямо в запущенное приложение и менять его поведение. В статье рассказывается, как работать с Frida, исследовать приложения на телефоне без root-доступа и создавать свои моды.
Статья: https://habr.com/ru/companies/selectel/articles/973526/
Платформа: Android
Frida — это инструмент, который позволяет вживлять небольшой кусок JavaScript-кода прямо в запущенное приложение и менять его поведение. В статье рассказывается, как работать с Frida, исследовать приложения на телефоне без root-доступа и создавать свои моды.
Статья: https://habr.com/ru/companies/selectel/articles/973526/
Платформа: Android
👍1
5.webm
169.5 KB
Создание анимированных полос в Jetpack Compose
Если мы хотим нарисовать и анимировать полоски в Jetpack Compose, мы можем использовать градиент с его параметрами.
Статья: https://apptractor.ru/info/articles/stripes-jetpack-compose.html
Платформа: Android
Если мы хотим нарисовать и анимировать полоски в Jetpack Compose, мы можем использовать градиент с его параметрами.
Статья: https://apptractor.ru/info/articles/stripes-jetpack-compose.html
Платформа: Android
MaterialKolor - динамическая цветовая схема Material3 из исходного цвета
MaterialKolor - библиотека Compose Multiplatform для создания динамических цветовых палитр Material Design 3 из любого цвета. Доступные платформы: Android, iOS, JVM (Desktop) и JavaScript/wasm (браузер). Основу этой библиотеки составляет репозиторий material-color-utilities. В настоящее время это библиотека доступна только на Java, и автор хотел сделать её доступной для проектов Kotlin Multiplatform. Исходный код был взят и преобразован в библиотеку Kotlin Multiplatform.
MaterialKolor на GitHub: https://github.com/jordond/MaterialKolor
Платформа: Android/кроссплатформа
⭐️: 755
MaterialKolor - библиотека Compose Multiplatform для создания динамических цветовых палитр Material Design 3 из любого цвета. Доступные платформы: Android, iOS, JVM (Desktop) и JavaScript/wasm (браузер). Основу этой библиотеки составляет репозиторий material-color-utilities. В настоящее время это библиотека доступна только на Java, и автор хотел сделать её доступной для проектов Kotlin Multiplatform. Исходный код был взят и преобразован в библиотеку Kotlin Multiplatform.
MaterialKolor на GitHub: https://github.com/jordond/MaterialKolor
Платформа: Android/кроссплатформа
⭐️: 755
👍1
Перетаскивание и буфер обмена с помощью Transferable
Используя
Статья: https://apptractor.ru/info/articles/peretaskivanie-i-bufer-obmena-s-pomoschyu-transferable.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
Используя
Transferable, вы не только упрощаете реализацию, но и делаете своё приложение совместимым с современными формами взаимодействия, от буфера обмена до перетаскивания, используя единую модель данных.Статья: https://apptractor.ru/info/articles/peretaskivanie-i-bufer-obmena-s-pomoschyu-transferable.html
Платформа: iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Как Vercel перенесли магию v0 в нативное приложение
Vercel делится тем, как они создавали iOS-версию своего AI-генератора интерфейсов v0. Спойлер: это не Swift и не Flutter. Это мощная демонстрация того, куда движется экосистема React.
Ключевые моменты из статьи:
• React Native + Expo: Основа приложения. Они использовали Expo (с Continuous Native Generation), что позволило веб-разработчикам писать нативный код, практически не выходя из привычной среды.
• React Server Components (RSC) на мобилке: Это самое интересное. Приложение v0 использует ту же архитектуру, что и веб-версия. Сервер стримит компоненты прямо на устройство. Это позволяет переиспользовать огромные куски логики.
• Общий код: Благодаря монорепозиторию (Turborepo), они делят типы, утилиты и даже UI-компоненты между Next.js (веб) и Expo (iOS).
• Стриминг: Ощущение "магии", когда код пишется у вас на глазах, реализовано через потоковую передачу данных. Это не просто запрос-ответ, это живой поток токенов от LLM, который рендерится в реальном времени.
• Производительность: Чтобы скролл и анимации были плавными (60fps), тяжелые вычисления вынесены в отдельные потоки или обрабатываются на сервере.
Vercel доказывает, что граница между вебом и нативом стирается. Если у вас уже есть крутая команда React-разработчиков, вам не обязательно нанимать отдельный штат iOS-инженеров, чтобы сделать продукт мирового уровня.
Статья: https://vercel.com/blog/how-we-built-the-v0-ios-app
Платформа: кроссплатформа
Vercel делится тем, как они создавали iOS-версию своего AI-генератора интерфейсов v0. Спойлер: это не Swift и не Flutter. Это мощная демонстрация того, куда движется экосистема React.
Ключевые моменты из статьи:
• React Native + Expo: Основа приложения. Они использовали Expo (с Continuous Native Generation), что позволило веб-разработчикам писать нативный код, практически не выходя из привычной среды.
• React Server Components (RSC) на мобилке: Это самое интересное. Приложение v0 использует ту же архитектуру, что и веб-версия. Сервер стримит компоненты прямо на устройство. Это позволяет переиспользовать огромные куски логики.
• Общий код: Благодаря монорепозиторию (Turborepo), они делят типы, утилиты и даже UI-компоненты между Next.js (веб) и Expo (iOS).
• Стриминг: Ощущение "магии", когда код пишется у вас на глазах, реализовано через потоковую передачу данных. Это не просто запрос-ответ, это живой поток токенов от LLM, который рендерится в реальном времени.
• Производительность: Чтобы скролл и анимации были плавными (60fps), тяжелые вычисления вынесены в отдельные потоки или обрабатываются на сервере.
Vercel доказывает, что граница между вебом и нативом стирается. Если у вас уже есть крутая команда React-разработчиков, вам не обязательно нанимать отдельный штат iOS-инженеров, чтобы сделать продукт мирового уровня.
Статья: https://vercel.com/blog/how-we-built-the-v0-ios-app
Платформа: кроссплатформа
👍1