Pull to refresh

Улучшаем Kaiten: разработка десктопного и мобильного клиента с новым UI

Level of difficultyEasy

Привет, Хабр! Я столкнулся с проблемой, которая, возможно, знакома многим пользователям этой платформы. Несмотря на мощный функционал системы, сам Kaiten показался мне не очень удобным для повседневного использования. Поэтому я решил создать свой десктопный и мобильный клиенты с новым, улучшенным интерфейсом, который будет удобен и интуитивно понятен для всех пользователей.

Внешний вид доски с карточками
Внешний вид доски с карточками

В чем заключалась проблема?

Хотя Kaiten отлично справляется со своей основной задачей управления проектами, я заметил несколько недостатков:

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

  • Ограниченная поддержка различных платформ — хотя веб-версия работает, необходимость постоянного доступа через браузер не всегда удобна.

  • Отсутствие нативных клиентов — в десктопных и мобильных приложениях существует нехватка продуманного UX.

Чтобы решить эти проблемы, я решил сделать следующее:

  • Переработать пользовательский интерфейс для удобного использования как на компьютере, так и на мобильных устройствах.

  • Создать десктопное приложение с использованием Qt 6 как оболочки для PWA (Progressive Web App).

  • Создать мобильное приложение с использованием Capacitor, который позволяет нативно интегрировать веб-приложение с платформами iOS и Android.

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

Технологии

UI на Angular 17

Для построения пользовательского интерфейса я использовал Angular 17, который позволил создать динамичный и отзывчивый интерфейс. С его помощью удалось добиться плавного и интуитивного взаимодействия с приложением. Компонентный подход Angular отлично подходит для разделения логики интерфейса, что позволило реализовать гибкую систему для работы с задачами.

Десктопное приложение

Для десктопных клиентов я решил использовать Qt 6. Почему именно Qt? Это мощный фреймворк для кроссплатформенной разработки, который позволяет создавать нативные приложения для Windows, macOS и Linux.

В основе десктопного клиента лежит WebView, который использует прогрессивное веб-приложение (PWA) для рендеринга интерфейса. Такое решение позволяет объединить возможности веб-приложений и нативного окружения, обеспечивая удобную установку и работу как самостоятельного приложения, а не через браузер.

Мобильное приложение: Capacitor

Для мобильных клиентов я выбрал Capacitor. Этот инструмент идеально подходит для гибридных приложений, так как позволяет использовать веб-технологии для создания нативных мобильных приложений. Приложение написано на Angular и собрано с помощью Capacitor для iOS и Android.

Работа с API Kaiten

Мой клиент использует официальное API Kaiten для взаимодействия с системой. Это позволяет синхронизировать задачи, доски и проекты в реальном времени, что обеспечивает плавную работу на всех платформах.

Как установить?

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

Инструкция по установке:

  1. Перейдите в раздел GitHub Releases.

  2. Выберите нужную версию и скачайте сборку для вашей операционной системы (Windows, macOS, Linux, Android).

  3. Установите приложение согласно инструкции для вашей системы.

Дальнейшие планы

Проект находится в активной разработке, и впереди много интересных задач:

  • Добавление новых функций: расширение возможностей интерфейса, улучшение пользовательского опыта.

  • Расширение кроссплатформенной поддержки: работа над улучшением производительности и стабильности на разных устройствах.

Заключение

Работа над созданием клиента была не только полезной, но и очень увлекательной. Я отлично провел время, вспоминая некоторые хитрости и трюки, связанные с Angular, которые давно не использовал. В итоге я получил решение, которым вполне доволен и которое уже использую в своей повседневной работе.

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

Спасибо за внимание! Если у вас возникли вопросы или идеи по дальнейшему развитию, пишите в комментариях или создавайте issue на GitHub.

Ссылки:

https://kaiten-client.ru/

https://kaiten.ru/

https://github.com/mlivirov/kaiten-desktop

Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.