Kotlin Developer
6.38K subscribers
192 photos
7 videos
264 links
Самый топовый канал по Kotlin

По вопросам сотрудничества и рекламы: @NadikaKir

Мы на бирже: https://telega.in/c/KotlinSenior
Download Telegram
👩‍💻 Extra Ktor Plugins — это набор мощных плагинов для расширения возможностей Ktor-приложений как на стороне сервера, так и на стороне клиента!

🌟 Эти плагины помогают решать распространённые задачи, такие как интеграция с Kafka, планирование задач, ограничение частоты запросов и повышение устойчивости через Circuit Breaker.

🔐 Лицензия: MIT

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 AtomicFU — библиотека для работы с атомарными операциями в Kotlin. Этот проект от JetBrains предоставляет удобный и эффективный способ работы с атомарными операциями в Kotlin-проектах. Поддерживает все основные платформы: JVM, Native, JS и Wasm.

Библиотека предлагает идиоматичный Kotlin API для атомарных операций, который затем трансформируется в эффективный код для каждой целевой платформы. Поддерживаются атомарные массивы, пользовательские расширения и даже примитивы синхронизации.

🖥 GitHub

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
2
👩‍💻 Galoisenne — это библиотека на Kotlin, предназначенная для работы с графами, конечными полями и дискретными динамическими системами!

🌟 Она реализует новый вычислительный подход, называемый графовыми вычислениями, который отличается от традиционных моделей, таких как машина Тьюринга или λ-исчисление Чёрча. Преимущество этого подхода заключается в возможности прямого преобразования в итеративное умножение матриц на GPU, что открывает широкие возможности для параллельных вычислений.

🔐 Лицензия: Apache-2.0

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 NFCGate — это приложение для Android, предназначенное для захвата, анализа и модификации NFC-трафика!

🔎 Основные возможности NFCGate:

🌟 Захват на устройстве: позволяет перехватывать NFC-трафик от сторонних приложений, работающих на устройстве.

🌟 Режим ретрансляции: передача NFC-трафика между двумя устройствами через сервер, где одно устройство работает в режиме "ридера", а другое эмулирует NFC-метку с использованием Host Card Emulation (HCE).

🌟 Режим воспроизведения: повторное воспроизведение ранее захваченного NFC-трафика в режиме "ридера" или "метки".

🌟 Клонирование: копирование начальной информации метки, такой как идентификатор (ID).

🌟 Экспорт в pcapng: сохранение захваченного NFC-трафика в формате pcapng для дальнейшего анализа в инструментах, таких как Wireshark.

🔐 Лицензия: Apache-2.0

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 Resaca — это библиотека для Jetpack Compose, позволяющая привязывать ViewModel или другие объекты к конкретным @Composable функциям, обеспечивая их сохранение во время пересозданий и навигации! Это позволяет создавать более мелкие и переиспользуемые компоненты с собственной логикой, улучшая структуру и поддержку кода.

🔐 Лицензия: MIT

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Bonsai — это компонент для создания древовидных структур (Tree View) в Jetpack Compose!

🌟 Он обладает возможностью отслеживания состояния, что обеспечивает автоматическую перерисовку при изменениях в дереве. Компонент поддерживает неограниченную вложенность узлов, ленивую загрузку данных и включает встроенный DSL для удобного построения деревьев. Дополнительно, Bonsai предоставляет интеграцию с файловой системой и JSON-данными, позволяя создавать динамические и интерактивные интерфейсы.

🔐 Лицензия: MIT

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 FlexibleBottomSheet — мощный и настраиваемый компонент для работы с нижними листами (bottom sheets) в Jetpack Compose, включая мультиплатформенную поддержку!

🌟 Он позволяет использовать сегментированные размеры, настраивать модальные и немодальные типы листов, а также обеспечивает взаимодействие с элементами позади листа, как в Google Maps. Библиотека поддерживает три уровня расширения (полное, промежуточное и слегка открытое состояние), а также гибкие параметры для управления состояниями и анимацией.

🔐 Лицензия: Apache-2.0

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 kotlin-math — набор API в Kotlin, предназначенных для упрощения выполнения математических операций, связанных с графикой!

🌟 Эти API в основном моделируются по аналогии с GLSL (OpenGL Shading Language), что облегчает перенос кода в шейдеры и обратно. Предоставляемые типы данных предназначены для использования в качестве значимых типов, а большинство API представлены в виде функций верхнего уровня, а не методов.

🔐 Лицензия: Apache-2.0

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
SourceCraft — первая в России платформа, где ИИ-агент встроен в весь цикл разработки: от идеи до деплоя!

Для Kotlin-разработчиков особенно интересны два улучшения:

— Умная навигация по коду теперь нативно поддерживает Kotlin. В веб-интерфейсе можно быстро переходить к объявлениям, искать использования и ориентироваться в больших проектах без IDE.

— Режим агента в SourceCraft Code Assistant автоматизирует создание репозитория, написание кода, генерацию автотестов, проверку безопасности и деплой. Все это - по одному запросу пользователя!

Плюс, платформа теперь интегрируется с внешними LLM через MCP, что дает гибкость в выборе моделей. Кроме того, появилась глубокая интеграция с Yandex Cloud через сервисные подключения — это безопасный доступ к облаку прямо из CI/CD.


@KotlinSenior #kotlin
1
👩‍💻 Turbine — это небольшая библиотека для тестирования потоков (Flow) в Kotlin с использованием библиотеки kotlinx.coroutines!

🌟 Она предоставляет упрощённый API для проверки поведения потоков, таких как ожидание элементов, завершения или ошибок. Библиотека также позволяет разработчикам писать тесты для потоков данных, используя методы вроде awaitItem(), awaitComplete() и awaitError(), а также обеспечивает автоматическое завершение тестов с проверкой, что все события были обработаны.

🔐 Лицензия: Apache-2.0

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Swipe — это библиотека для Jetpack Compose, которая добавляет поддержку жестов свайпа для выполнения действий!

🌟 В отличие от стандартного SwipeToDismiss, она предназначена для раскрытия действий при свайпе влево или вправо, не удаляя сам элемент.

🌟 Библиотека позволяет легко настроить визуальное оформление, иконки и обработчики свайпов, что делает её удобной для создания списков с интерактивными элементами. Она полезна для добавления таких функций, как архивирование, удаление или откладывание элементов в приложениях.

🔐 Лицензия: Apache-2.0

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Kotlin DataFrame — библиотека для типизированной обработки данных от JetBrains, вдохновленная Pandas.

Проект позволяет загружать данные из CSV/JSON/SQL, фильтровать и агрегировать их через цепочки вызовов в Kotlin-стиле. Интересно, что инструмент поддержи очень быструю генерацию type-safe API: при работе в Jupyter Notebook или с Gradle-плагином система автоматически создаёт extension-свойства для колонок.

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 Ktorm — минималистичный ORM для Kotlin-разработчиков. Этот фреймворк предлагает принципиально иной подход к работе с базами данных: вместо сложных конфигураций и магии аннотаций здесь чистый Kotlin-код с типизированным SQL DSL.

При этом фреймворк не абстрагируется от SQL, а аккуратно его дополняет: вы всегда видите, какой запрос будет выполнен, но пишете его на понятном Kotlin. Встроенная поддержка пагинации, агрегаций и транзакций делает Ktorm готовым к использованию в production.

🖥 GitHub

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
👩‍💻 Redwood — библиотека для создания пользовательских интерфейсов на Android, iOS и в веб-приложениях с использованием Kotlin и Jetpack Compose!

🌟 Основная цель проекта — упростить разработку многоплатформенных интерфейсов, обеспечивая согласованность UI и возможность использования общих компонентов на разных платформах.

🌟 Redwood интегрирует систему дизайна и компонуемые функции (composables), что позволяет разрабатывать UI, которые адаптируются к особенностям каждой платформы. Это решение нацелено на повышение продуктивности и унификацию интерфейсов без необходимости писать отдельный код для каждой платформы.

🔐 Лицензия: Apache-2.0

🖥 Github

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
💻 kotlin-logging — легковесный фреймворк для логгирования, написанный на чистом Kotlin

implementation 'io.github.oshai:kotlin-logging-jvm:5.1.0'

kotlin-logging предоставляет обертку для slf4j-api для использования классами Kotlin; при этом kotlin-logging имеет такие преимущества:
— нет необходимости писать шаблонный код, содержащий имя логгера и класса или имя логгера
— простой способ регистрации сообщений в виде строки с ленивой оценкой с помощью лямбда-выражения {}
— все предыдущие реализации slf4j по-прежнему могут быть использованы

🖥 GitHub
🟡 Wiki

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
💻 lets-plot — мультиплатформенная библиотека для построения графиков и диаграмм, написанная на Kotlin и Python

pip install lets-plot

Графики, созданные с помощью lets-plot можно встраивать в JVM (Swing, JavaFX) и Kotlin/JS-приложения.

🖥 GitHub

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1
💻 github-workflows-kt — инструмент на Kotlin для создания рабочих процессов GitHub Actions

github-workflows-kt поможет писать типобезопасный код на Kotlin для организации надежных рабочих процессов, планирования GitHub Actions и т.д.

🖥 GitHub
🟡 Доки

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1
💻 strikt — библиотека Kotlin для работы с assertion

dependencies {
testImplementation("io.strikt:strikt-core:<version>")
}


Strikt — это библиотека Kotlin для работы с assertion в тестах;
предназначена для использования с такими компонентами как JUnit, Minutest, Spek или KotlinTest.

Strikt опирается на свободный стиль утверждений, похожий на AssertJ, но не использует сложную иерархию классов для построения утверждений.

🖥 GitHub
🟡 Доки

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1
⚡️ Landscapist — высокооптимизированная библиотека Kotlin для загрузки изображений

Landscapist обеспечивает загрузку и отрисовку изображений с помощью 3 компонентов: Glide, Coil и Fresco.
Landscapist поддерживает отслеживание состояний загрузки изображений.
Библиотека также предоставляет разные удобные анимации, включая кроссфейды, трансформации размытия и многие другие.

А ещё Landscapist позволяет гибко управлять загрузкой изображений с помощью массы плагинов

🖥 GitHub
🟡 Доки

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1
💻 Ktlint — линтер Kotlin в духе feross/standard (JS) и gofmt (Go)

brew install ktlint

Вообще, это довольно известный линтер, но если вдруг кто не знал — обязательно попробуйте

Особенности ktlint:
— не требует настройки; уже из коробки ktlint позволяет отслеживать соблюдение соглашений по стилю — Android Kotlin Style Guide

— ktlint позволяет легко создать собственные наборы правил; при необходимости эти правила можно легко отключить

— в ktlint встроен форматтер, который исправляет неправильное написание кода, когда это возможно

— настраиваемый вывод; из коробки доступны несколько отчетов форматов вывода plain, plain-summary, json, html и checkstyle; также без проблем можно создать собственный формат вывода

🖥 GitHub
🟡 Использование

@KotlinSenior #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
1