Приложение для родителей школьников, созданное для организации деятельности по сбору денег, оплате и организации школьной жизни. С его помощью можно легко и прозрачно управлять всеми аспектами родительских взносов и расходов:
- Учет денежных средств: Ведение детального учета поступлений и расходов, чтобы родители всегда знали, сколько было собрано и куда потрачены деньги.
- Создание и извещение о новых мероприятиях: Удобный способ анонсировать и планировать школьные мероприятия, уведомляя всех пользователей через push-уведомления.
- Подробная отчетность по каждой покупке: Прозрачная бухгалтерия с возможностью просмотра всех финансовых операций.
- Учет взносов: Возможность отслеживать, кто и сколько сдал денег, что позволяет избежать недоразумений и улучшить организацию.
Приложение доступно для устройств iOS и Android, обеспечивая удобный доступ для всех пользователей. Оно поддерживает две роли: администратора и родителей. Администратор – это главный пользователь, ответственный за внесение всех данных и распоряжение денежными средствами. Родители-пользователи могут следить за всеми операциями и получать актуальную информацию о школьной жизни.
Стек технологий:
- Jetpack Compose
- Kotlin
- Coroutines
- Retrofit
- Room
- Koin - DI
- Navigation with Compose
- MVVM
- ViewModel
- Clean Architecture
Моя роль в приложении:
Приложение было разработано с нуля, начиная с дизайна в Figma и заканчивая реализацией. Я спроектировал архитектуру, используя принципы Clean Architecture и MVVM для обеспечения четкой структуры и разделения ответственностей.
- Jetpack Compose: Использование самого передового инструмента для создания пользовательского интерфейса в Android приложениях, что позволяет создавать динамичные и современные UI.
- Clean Architecture: Обеспечивает разделение приложения на слои (Presentation, Domain, Data) для улучшения масштабируемости и поддержки.
- MVVM: Использование этого шаблона позволяет эффективно управлять пользовательским интерфейсом и бизнес-логикой, обеспечивая отделение от данных.
- Coroutines: Применение асинхронных операций с помощью Coroutines для управления потоками данных с минимальной блокировкой и обеспечения отзывчивости интерфейса.
- Room: Использование Room для локального хранения данных, обеспечивающего быстрый доступ и надежное управление базой данных SQLite.
- Koin DI: Внедрение зависимостей с помощью Koin для упрощения и улучшения модульности кода, обеспечивая удобство в управлении зависимостями и их разрешении.
- Многомодульная архитектура: Разделение приложения на модули для улучшения отказоустойчивости, возможности повторного использования кода и упрощения совместной разработки.
Технологический стек также включает Kotlin для языка программирования, Retrofit для работы с внешним API и навигацию с использованием Compose. Моя роль также включала проектирование и реализацию логики слоя Domain и Data, определение структуры базы данных и основной части взаимодействия с внешним API. Весь процесс был направлен на создание надежного и удобного инструмента для учета финансовых операций и организации школьной жизни родителями.
Скриншоты экранов