Нема описа

MrOzOn fd50af530d Update README.ru.md пре 4 година
app 5be4806436 refactoring code - remove theme and icon launcher in utils module for share пре 4 година
config 08552009e6 add library lent_repo for lint rules пре 5 година
core 163cbf0a6e add baseline for detekt пре 5 година
core_api 77ea8d4fd9 Merge branch 'master' into add_module_measure пре 5 година
core_impl 77ea8d4fd9 Merge branch 'master' into add_module_measure пре 5 година
feature_auth 5cc45cdcd9 fix style in layout пре 4 година
feature_measure db088223e0 add ru-Ru locale пре 4 година
feature_measure_type db088223e0 add ru-Ru locale пре 4 година
feature_person 5ecb98e6f6 bugfix - calculate correct name age for ru-RU пре 4 година
feature_splash 5be4806436 refactoring code - remove theme and icon launcher in utils module for share пре 4 година
gradle 86192de15c create default android project пре 5 година
lint_repo 5aa2393d94 add check list with interesting tags name пре 5 година
media ccedd99f72 rename some media files пре 4 година
scripts c22189e860 create layout for edit measure пре 5 година
utils 5be4806436 refactoring code - remove theme and icon launcher in utils module for share пре 4 година
.gitignore 2220d4df4a refactoring deps_versions.gradle and build.gradle for feature_auth add espresso пре 5 година
Dockerfile 9e3bc6d0a7 add Dockerfile - custom image for CI, add java8 пре 5 година
Jenkinsfile 1a3bad6f21 change Jenkinsfile - tests stage now run consistently пре 5 година
README.md e69534aa3f Update README.md пре 4 година
README.ru.md fd50af530d Update README.ru.md пре 4 година
build.gradle 6383fd5938 add jacoco plugin for calculate code coverage пре 5 година
detekt-config.yml 163cbf0a6e add baseline for detekt пре 5 година
detekt.gradle 163cbf0a6e add baseline for detekt пре 5 година
gradle.properties 86192de15c create default android project пре 5 година
gradlew 86192de15c create default android project пре 5 година
gradlew.bat 86192de15c create default android project пре 5 година
jacoco.gradle 6383fd5938 add jacoco plugin for calculate code coverage пре 5 година
settings.gradle 1b44190ce7 add empty project folder for lint пре 5 година

README.md

HealthDiarylogo

Read this in other languages: English, Русский.

Screenshots:

Diary for saving measurements of important health indicators.
A multi-user application that allows you to save the main indicators of human health. Namely:

  • temperature
  • pressure
  • pulse
  • blood sugar
  • saturation and others

Key features:

  • user's personal account
  • creating a list of profiles, people for whom measurements are saved
  • creating common profiles for multiple users
  • enter/change the selected dimension
  • viewing previously entered measurements in the list

Architectural solution:

  • multi-module application with "clean architecture" inside each module
  • single source of truth (SSOT) is a local SQLite database using Room framework
  • using static code analyzer Detekt
  • using plugin for calculate code coverage based on JaCoCo
  • using unit and instrumental tests ONLY one module (feauture) for example
  • writing to demonstratesome custom rules for Lint
  • added CI script for Jenkins

Technology stack:

  • Kotlin
  • Dagger 2
  • MVVM
  • Coroutine
  • Android Navigation
  • Architecture Components (Room for local cache)
  • Retrofit

Backend:

  • Django
  • DRF (Django REST Framework)
  • SQLite (used at the development stage, then you can choose MySQL or Postrges)

Screen lists:

  • User registration/authorization
  • Granting access to one user to the profiles of others
  • Measurement type settings
  • Add/edit dimension
  • Viewing measurements in a list