Проект представляет собой мобильное приложение-клиент, выполнящее роль платформы для поиска, организации и выполнения онлайн тестов или викторин. Также в состав проекта входит серверное приложение, обеспечивающее возможность сетевой игры в режиме реальном времени с неопределённым количеством других игроков.
- Модернизация учебного процесса с использованием платформы онлайн тестов
- Упрощение интерфейса организации и прохождения учебного тестирования
- Увеличение доступности и надёжности контроля знаний с использованием распространённых Android устройств
- Развитие заинтересованности учеников в процессе с помощью соревновательной системы в реальном времени
- Стэк технологий
- Kotlin + Coroutines - выполнение асинхронных операций в отдельном потоке
- Retrofit - быстрый и безопасный доступ к API со стороны клиента
- Spring Boot Framework - web-приложение развёрнутое на Heroku
- Google Firebase Filestore - серверная NoSql база данных
- Android Jetpack
- Navigation - навигация между фрагментами в раиках одной активности
- Navigation SafeArgs Plugin - безопасная передача данных между пунктами назначения
- Lifecycle - обработка событий на основе жизненного цикла приложения
- ViewModel - хранение и использование данных относящихся к UI в привязке к жизненному циклу представления
- Android KTX - набор расширений для Котлина
- Fragment - использование нескольких экранов в рамках одной активности
- ViewBinding - современный способ доступа к элементам разметки
- Современная архитектура
- Многоуровневая архитектура
- Паттерн проектирования MVVM на стороне клиента
- Spring MVP на стороне сервера
- Koin - Инъекция зависимостей
- JUnit4 и Espresso - модульное и инструментальное тестирование
- Continious Integration
- GitHub Actions - сборка и анализ артефакта приложения с помощью Gradle
- Автоматический анализ кода с помощью сторонних сервисов
- UI дизайн
- Material design
- FlexBox