IQListKit - реализация UITableView/UICollectionView без dataSource. Просто определяете секции и ячейки, а библиотека дальше все делает сама, в том числе и анимацию изменений. Работает с iOS 9.0.
Исходники: https://github.com/hackiftekhar/IQListKit
Исходники: https://github.com/hackiftekhar/IQListKit
Skelly - это крошечная библиотека для отображения скелетов, пустых состояний во время загрузки контента. Все скелеты полностью синхронизированы во всем приложении, независимо от того, сколько из них отображается на экране в данный момент. Можно настраивать цвета и радиус скругления.
Исходники: https://github.com/int02h/skelly
Исходники: https://github.com/int02h/skelly
Dovve - это клон Twitter, созданный с помощью Twitter API. Вы можете посмотреть весь путь создания этого приложения с нуля на странице автора в Instagram, там есть видео с разными уроками.
Instagram: https://www.instagram.com/dheeraj.iosdev/
Исходники приложения: https://github.com/dheerajghub/dovve
Instagram: https://www.instagram.com/dheeraj.iosdev/
Исходники приложения: https://github.com/dheerajghub/dovve
Библиотека от нашего читателя. Finch - настраиваемое меню отладки для Android-приложений. Оно не влияет на производственный код, но разработчики могут легко и просто добавлять свои собственные функции отладки.
Исходники: https://github.com/kernel0x/finch
Исходники: https://github.com/kernel0x/finch
BottomSheet - выдвигающийся снизу экран (как в Apple Maps, Shortcuts или Apple Music) с тремя состояниями на SwiftUI.
Библиотека: https://github.com/LucasMucGH/BottomSheet
Библиотека: https://github.com/LucasMucGH/BottomSheet
Multiplatform Compose - Kotlin-библиотека для использования Jetpack Compose в Android и iOS. Позволяет писать UI сразу для двух платформ на Kotlin. Пока, как и сам Compose, в стадии экспериментов.
Библиотека: https://github.com/cl3m/multiplatform-compose
А вот тут у нас есть вводные уроки по Jetpack Compose: https://apptractor.ru/info/articles/jetpack-compose-1.html
Библиотека: https://github.com/cl3m/multiplatform-compose
А вот тут у нас есть вводные уроки по Jetpack Compose: https://apptractor.ru/info/articles/jetpack-compose-1.html
XCMetrics - инструмент от инженеров Spotify, который помогает собирать метрики сборок в Xcode и улучшать их качество.
XCMetrics построен поверх XCLogParser, который представляет собой инструмент анализа логов Xcode и xcodebuild, хранящихся в формате xcactivitylog. Это позволяет XCMetrics собирать точные метрики, которые вы можете просматривать и отслеживать в течение всего жизненного цикла кодовой базы. XCMetrics обработал почти 1 миллион сборок и более 10 миллиардов шагов всех приложений Spotify для iOS с момента своего появления. Это позволило разработчикам принять важные и обоснованные решение в отношении структуры и архитектуры проекта.
Сайт: https://xcmetrics.io/
Исходники: https://github.com/spotify/XCMetrics
XCMetrics построен поверх XCLogParser, который представляет собой инструмент анализа логов Xcode и xcodebuild, хранящихся в формате xcactivitylog. Это позволяет XCMetrics собирать точные метрики, которые вы можете просматривать и отслеживать в течение всего жизненного цикла кодовой базы. XCMetrics обработал почти 1 миллион сборок и более 10 миллиардов шагов всех приложений Spotify для iOS с момента своего появления. Это позволило разработчикам принять важные и обоснованные решение в отношении структуры и архитектуры проекта.
Сайт: https://xcmetrics.io/
Исходники: https://github.com/spotify/XCMetrics
This media is not supported in your browser
VIEW IN TELEGRAM
Продолжаем изучать Jetpack Compose. ComposeSlackDesktop - демо-версия Slack, написанная на Jetpack Compose и Kotlin.
Исходники: https://github.com/vipulasri/ComposeSlackDesktop
Документация Compose for Desktop: https://www.jetbrains.com/lp/compose/
Начинаем работу с Jetpack Compose: https://apptractor.ru/info/articles/jetpack-compose-1.html
Исходники: https://github.com/vipulasri/ComposeSlackDesktop
Документация Compose for Desktop: https://www.jetbrains.com/lp/compose/
Начинаем работу с Jetpack Compose: https://apptractor.ru/info/articles/jetpack-compose-1.html
This media is not supported in your browser
VIEW IN TELEGRAM
ToastUI - простой способ показывать “тосты”, предупреждения, индикаторы загрузки или любой другой контент поверх экранов SwiftUI.
Библиотека: https://github.com/quanshousio/ToastUI
Библиотека: https://github.com/quanshousio/ToastUI
Fast Shopping - простой список покупок. Не содержит рекламы, нет голосового ввода, нет курсов валют или бюджетирования. Простое приложение для работы.
Исходники: https://github.com/Albert221/FastShopping
Исходники: https://github.com/Albert221/FastShopping
В пятницу не могу не поделиться красотой - трассировка лучей (ray tracing) на С++ в ASCII.
Видео: https://youtu.be/QkETiyYWh2o
Исходники: https://github.com/DinoZ1729/Ray
У этого же автора есть не менее красивое видео - симуляция столкновения галактик: https://www.youtube.com/watch?v=x62gOfZ9hCw
Видео: https://youtu.be/QkETiyYWh2o
Исходники: https://github.com/DinoZ1729/Ray
У этого же автора есть не менее красивое видео - симуляция столкновения галактик: https://www.youtube.com/watch?v=x62gOfZ9hCw
Bouncy - отскок для RecyclerView и NestedScrollView ̶(̶к̶а̶к̶ ̶в̶ ̶б̶о̶г̶о̶м̶е̶р̶з̶к̶о̶м̶ ̶i̶O̶S̶)̶, плюс drag&drop и свайпы.
Библиотека: https://github.com/Valkriaine/bouncy
Библиотека: https://github.com/Valkriaine/bouncy
Wyler - легковесная библиотека, написанная на Swift, которая организует процесс записи происходящего на экране на iOS. Можно записывать видео своего приложения и сохранять их в библиотеку.
Исходники: https://github.com/toupper/Wyler
Исходники: https://github.com/toupper/Wyler
This media is not supported in your browser
VIEW IN TELEGRAM
GaugeProgressView - индикатор прогресса в виде спидометра. Меняется практически все - цвета, толщина, начальное и конечное положение, шрифты и т.п.
Исходники: https://github.com/edgar-zigis/GaugeProgressView
Исходники: https://github.com/edgar-zigis/GaugeProgressView
Поиск ошибок в небезопасном и уязвимом приложении для Android
DIVA (Damn Insecure Vulnerable App, Чертовски Небезопасное Уязвимое Приложение) - это уязвимое приложение, предназначенное для ознакомления с самыми распространенными уязвимостями, которые можно найти в приложениях для Android. Эта статья проведет вас через обнаружение некоторых из этих уязвимостей - небезопасный вход, прописывание ключей безопасности в коде, небезопасное хранение данных, проблемы с проверкой введенных данных, с разграничением доступа.
Платформа: Android
Medium: 👏 130
DIVA (Damn Insecure Vulnerable App, Чертовски Небезопасное Уязвимое Приложение) - это уязвимое приложение, предназначенное для ознакомления с самыми распространенными уязвимостями, которые можно найти в приложениях для Android. Эта статья проведет вас через обнаружение некоторых из этих уязвимостей - небезопасный вход, прописывание ключей безопасности в коде, небезопасное хранение данных, проблемы с проверкой введенных данных, с разграничением доступа.
Платформа: Android
Medium: 👏 130
Как создать коллекцию карт в стиле Revolut
Эта статья призвана помочь вам понять, как кастомизировать UICollectionView, создав подкласс UICollectionViewFlowLayout.
Вы займетесь отступами, межстрочными интервалами и протоколами UIScrollView, чтобы добиться эффекта выскакивания для каждой ячейки при прокрутке пользователем. А также добавите анимацию масштабирования, когда пользователь проводит по ним, чтобы придать им ощущение упругости.
Платформа: iOS
Medium: 👏 68
Эта статья призвана помочь вам понять, как кастомизировать UICollectionView, создав подкласс UICollectionViewFlowLayout.
Вы займетесь отступами, межстрочными интервалами и протоколами UIScrollView, чтобы добиться эффекта выскакивания для каждой ячейки при прокрутке пользователем. А также добавите анимацию масштабирования, когда пользователь проводит по ним, чтобы придать им ощущение упругости.
Платформа: iOS
Medium: 👏 68
Medium
How to Create a Revolut-Esque Cards Collection View on iOS
Learn to make scroll-and-snap collection view cells and scale them on scroll
MortyUI - простое приложение про “Рика и Морти”, демонстрирующее работу GraphQL со SwiftUI. Вы можете просматривать персонажей, эпизоды и (скоро) локации.
Исходники: https://github.com/bitrise-io/apm-ios-test-mortyUI
Исходники: https://github.com/bitrise-io/apm-ios-test-mortyUI
This media is not supported in your browser
VIEW IN TELEGRAM
Интеграция SpriteKit в iOS-приложение
Простое соединение SpriteKit и UIKit и добавление потрясающих анимаций SpriteKit в приложение на основе сторибордов.
Платформа: iOS
Medium: 👏 114
Простое соединение SpriteKit и UIKit и добавление потрясающих анимаций SpriteKit в приложение на основе сторибордов.
Платформа: iOS
Medium: 👏 114
9 любимых расширений Android KTX
Расширения Kotlin позволяют нам расширять некоторые классы новыми функциями - в результате мы получаем более чистый и простой код. Это так здорово, что некоторые из распространенных расширений Android Kotlin включены в проект Android KTX, и они находятся всего в одной зависимости от нас. В этой статье рассматриваются различные интересные расширения Android KTX.
Платформа: Android
Расширения Kotlin позволяют нам расширять некоторые классы новыми функциями - в результате мы получаем более чистый и простой код. Это так здорово, что некоторые из распространенных расширений Android Kotlin включены в проект Android KTX, и они находятся всего в одной зависимости от нас. В этой статье рассматриваются различные интересные расширения Android KTX.
Платформа: Android
Как мы просто сократили объем входящего в дата-центр трафика на 70%
Статья от FunCorp о применении сжатии к исходящим от устройств аналитическим событиям, в результате чего объем трафика снизился на 70%.
Платформа: iOS/Android
Habr: ⬆️ 88
Статья от FunCorp о применении сжатии к исходящим от устройств аналитическим событиям, в результате чего объем трафика снизился на 70%.
Платформа: iOS/Android
Habr: ⬆️ 88
Condensation - распределенная база данных общего назначения со сквозной безопасностью. Пока есть версия для Android, версия для iOS планируется в конце года.
Condensation позволяет создавать современные приложения, обеспечивая при этом владение данными и безопасность. Это универсальный проект с открытым исходным кодом, который отвечает сложным задачам безопасности следующих десятилетий и защищает цифровые права.
Архитектура Condensation, вдохновленная блокчейном, электронной почтой и версионностью git, представляет собой уникальное решение для разработки масштабируемых и современных приложений.
Сайт: https://condensationdb.com/
Condensation позволяет создавать современные приложения, обеспечивая при этом владение данными и безопасность. Это универсальный проект с открытым исходным кодом, который отвечает сложным задачам безопасности следующих десятилетий и защищает цифровые права.
Архитектура Condensation, вдохновленная блокчейном, электронной почтой и версионностью git, представляет собой уникальное решение для разработки масштабируемых и современных приложений.
Сайт: https://condensationdb.com/