Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

528 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kaljakello (Beer Clock)

This repo contains the implementation of a multiplatform (Android + iOS) mobile app for tracking blood alcohol concentration based on recorded alcohol consumption. It can be used to give you an estimate for how long it takes for your body to clear out the remaining alcohol. Please note that the app can only calculate an estimation based on the generally available alcohol calculation formulas. For more accurate results you must use a proper blood alcohol measuring tool.

This project is based on the Jetpack Compose Multiplatform project, and it has been created from their project template.

Beer time
Illustration courtesy of ChatGPT

Read the project diary for some description in how the project was setup.

App screenshots

App main screen Drink details Statistics

Supported platforms and minimum required OS level

  • Android 9.0 Pie (API level 28)
  • iOS 18 (Xcode deployment target 18.2; the SQLDelight dialect is pinned to SQLite 3.38+ to match this floor)

Libraries

BeerClock is based on the latest Compose Multiplatform release (as of development). When updating versions, see the version compatibility notes.

BeerClock uses SQLite as the database to store the drink data. For Android, the SQLite backend is replaced with requery to get a newer version.

The SQLite version installed:

  • Android: 3.49.0 (from requery)
  • iOS: supplied by platform (iOS 18 ships SQLite 3.43+)
  • Minimum SQLite version: 3.38 — the SQLDelight dialect is pinned to sqlite-3-38 in gradle/libs.versions.toml

Troubleshooting

See the troubleshooting documentation for common errors and some workarounds when developing with Compose Multiplatform.

Development

To verify that SQL migration files create the same schema as the .sq files, you can run:

./gradlew verifySqlDelightMigration

To run all tests, you can run:

./gradlew check

To run instrumented tests on a running Android emulator, fire up the emulator and run:

./gradlew :androidApp:connectedAndroidTest

About

Mobile app for monitoring blood alcohol concentration

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages