/
Symbiosis

Библиотека для работы с блокчейном на KMM: как мы переводили код с React JS на Kotlin

Symbiosis — приложение-шоукейс для обмена криптовалютой между сетями. Для него мы разработали специальную библиотеку на KMM для работы с криптовалютами.

Финансирует Binance

Поддерживает 11 криптосетей

Рыночная стоимость 13 млн долларов

Задача

Задача

Перенести библиотеку с React на Kotlin Multiplatform, чтобы ускорить работу криптоприложений на мобильных устройствах.

Решение

Решение

Разработали библиотеку на Kotlin Multiplatform для работы с криптокошельками. Такая библиотека будет быстрее работать на мобильных устройствах.

Сделали приложение-шоукейс с открытым кодом, чтобы сторонние разработчики могли своими глазами посмотреть на принципы работы библиотеки и интегрировать ее в свой проект.

Процесс разработки

Зачем нужна эта библиотека. Изначально компания Symbiosis Labs Ltd обратилась к нам с задачей сделать приложение для свободного обмена криптовалютой. Но уже в процессе разработки приоритеты сменились, и основной задачей стало разработать библиотеку на KMM для работы с криптокошельками.

Блокчейн-системы изначально были написаны на JavaScript, потому большая часть инструментов для них также написана на JS, в данном случае у заказчика была библиотека на React JS. Однако мобильные устройства не умеют самостоятельно работать с этим языком, поэтому во всех приложениях на JS для смартфонов используется эмулятор. Из-за этого, лишнего, посредника выполнение команд проходит медленнее и сам процесс требует больше вычислительной мощности.

Как мы создавали библиотеку. Этот процесс включал в себя два этапа: чтение спецификации и перевод с React на Kotlin.

Спецификацию необходимо было привести в порядочный вид, из-за чего ее прочтение заняло несколько дней. Но это все равно получилось быстрее, чем если бы мы просто переносили код с React.

А на втором этапе мы брали JS-код заказчика и переписывали его на Kotlin. Дополнительная сложность была в том, что код JS-библиотеки был завязан на React и приходилось переписывать с React-подходов на Kotlin, а именно избавляться от хуков.

Где можно посмотреть на работу библиотеки. В сопровождение к библиотеке мы сделали приложение для обмена криптовалютой между разными блокчейн-сетями. У приложения открытый код, чтобы сторонние разработчики могли посмотреть принципы работы библиотеки и интегрировать ее в свой криптокошелек.

Что было самым сложным

Оригинальная библиотека клиента написана с использованием React. Требовалось очень внимательно переносить код из одного подхода в другой, с сохранением всей работоспособности.

Как мы решили эту задачу

Необходимо было вникать в код, переписывать его, а затем несколько раз проверять. И все равно возникали неточности, которые потом было сложно находить, так как итоговый код сильно отличался от оригинального.

Технологический стек

Kotlin Multiplatform Mobile
Kotlin
Swift
Ktor

Результат

Разработали библиотеку на KMM для работы с криптокошельками. Такая библиотека будет работать эффективнее, чем аналогичная на JavaScript. Между командой и исполнением в нашей библиотеке нет посредника, поэтому программа выполняется быстрее и требует меньше вычислительной мощности.

Сделали приложение для наглядной демонстрации работы библиотеки. Внешние разработчики могут изучить ее изнутри и интегрировать со своим криптокошельком.

Теперь у нас есть готовое решение для подобных задач, которое уже функционирует и готово к интеграции.

Что делать с библиотекой:

  1. У нее открытый код, так что вы можете интегрировать ее со своим приложением для криптовалют. Скачать библиотеку можно с нашего GitHub.
  2. Заказать интеграцию у нас, если у вас нет команды или у нее нет опыта работы с KMM. Ссылка на бесплатную консультацию в конце страницы

Android
Android

Из-за того что блокчейн изначально писался на JavaScript, все, что для него пишут, тоже выходит на JS. Теперь есть альтернатива.

Первая библиотека для крипты на KMM

Из-за того что блокчейн изначально писался на JavaScript, все, что для него пишут, тоже выходит на JS. Теперь есть альтернатива.

Давайте обсудим ваш проект!

Это бесплатно. Мы расскажем, как приложение решит конкретные бизнес-задачи.

Похожие проекты

APATRIS

2018

«Кассир»

2022

«Кредитный брокер»

2022

JJO

2021

UPSTOX

2022