Skip to content

About

Hyper Android - это открытый исходный код apk приложения мессенджера под смартфоны, для просмотра и предложения изменений.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

HYPER · Android

Концепт Android-мессенджера HYPER в стиле Material You 3. Полноценный интерфейс на Jetpack Compose с чатами, настройками, профилем, темами и QR-авторизацией. Серверная часть пока не подключена — все данные демонстрационные и хранятся локально.

Поддерживается Android 11 (API 30) и выше.

Что внутри

  • Приветствие — брендовый экран «Добро пожаловать в HYPER!» с кнопкой «Войти» и переходом к регистрации.
  • Авторизация — вход по почте/логину и паролю, показ/скрытие пароля, ошибки, демо-доступ.
  • 2FA — если аккаунт не демонстрационный, после входа запрашивается 6-значный код (демо-код 123456).
  • Регистрация — открывается внутри приложения в WebView: https://web.hyper-messenger.ru/register.
  • Нижняя навигация — три «плашки» в стиле iOS: Чаты, Настройки, Профиль.
  • Чаты — поиск, фильтры, закреплённые чаты, непрочитанные, демо-диалог с отправкой сообщений.
  • Настройки — темы, уведомления, приватность, QR-авторизация, настройки на сайте, активные устройства, информация о приложении и выход.
  • Темы — системная/светлая/тёмная, динамический цвет Material You (Android 12+), пять акцентных палитр и живой предпросмотр.
  • Профиль — карточка пользователя, статистика, данные аккаунта, редактирование имени и статуса, выход.
  • QR-авторизация — экран сканера с анимированной рамкой и демо-подтверждением входа. Реальный сканер камеры подключается вместе с сервером.
  • Иконка — из mesresources/icon.png сгенерированы launcher-иконки, адаптивная иконка и монохромная тема Android 13+.

Демо-аккаунт

Поле Значение
Логин test@hyper.ru
Пароль despatch
2FA нет

Демо-вход работает полностью офлайн и не требует сервера. Любая другая пара логин/пароль в концепте показывает шаг 2FA, чтобы продемонстрировать сценарий; универсальный код — 123456.

Сборка

Требования:

  • JDK 17
  • Android SDK с compileSdk 35 (Android Studio Koala или новее)
./gradlew assembleDebug

APK появится здесь:

app/build/outputs/apk/debug/app-debug.apk

Release-сборка (без подписи):

./gradlew assembleRelease

GitHub Actions

Файл .github/workflows/android-build.yml собирает проект при push/PR и вручную через Actions → Android Build → Run workflow. В артефакты попадают:

  • hyper-debug-apk — устанавливаемый debug APK;
  • hyper-release-unsigned-apk — unsigned release APK.

Где менять адреса

Все веб-адреса собраны в одном файле:

app/src/main/java/ru/hyper/messenger/core/HyperConfig.kt
const val WEB_BASE_URL = "https://web.hyper-messenger.ru"
const val REGISTER_URL = "$WEB_BASE_URL/register"
const val SETTINGS_URL = "$WEB_BASE_URL/settings"
const val LOGIN_URL = "$WEB_BASE_URL/login"

В исходном ТЗ для регистрации был указан домен web.hyper-messer.ru, а для остальных страниц — web.hyper-messenger.ru. Здесь используется единый домен web.hyper-messenger.ru. Если нужен именно messer, поменяйте одну строку в HyperConfig.kt.

Структура проекта

app/src/main/java/ru/hyper/messenger/
├── core/HyperConfig.kt          # адреса сайтов
├── data/
│   ├── AuthRepository.kt        # локальная демо-авторизация и 2FA
│   ├── AuthViewModel.kt         # состояние входа
│   ├── DemoData.kt              # чаты, сообщения, демо-пользователь
│   └── PreferencesRepository.kt # темы и настройки
├── model/                       # пользователь, чаты, сообщения
├── ui/
│   ├── HyperRoot.kt             # навигация приложения
│   ├── components/              # общие Material You компоненты
│   ├── screens/                 # welcome, login, 2FA, web, main, chat, settings, profile
│   └── theme/                   # цветовые схемы, типографика, формы
└── MainActivity.kt

Что подключить следующим этапом

  1. Заменить AuthRepository на реальные запросы к API HYPER (вход, 2FA, refresh токена).
  2. Подключить WebView-события успешной регистрации/входа и обновление сессии.
  3. Загружать чаты, сообщения и профиль из API вместо DemoData.
  4. Добавить QR-сканер камеры (CameraX + ML Kit или ZXing) и обмен QR-токеном с сервером.
  5. Реализовать пуш-уведомления, звонки, вложения и голосовые сообщения.
  6. Заменить локальные настройки на синхронизацию с аккаунтом и DataStore + защищённое хранилище токенов.

Статус

Это UI-концепт, а не готовый продакшен-мессенджер. Сайт и API ещё не запущены, поэтому экраны регистрации, настроек на сайте и QR могут показывать ошибку загрузки — это ожидаемо.

About

Hyper Android - это открытый исходный код apk приложения мессенджера под смартфоны, для просмотра и предложения изменений.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages