Skip to content

mikolasan/ForgottenStandards

Repository files navigation

Imperial Russia

codebeat badge Codacy Badge Maintainability

header

Imerial Russia is a historic unit converter app for Android

It also includes simple arithmetic calculator.

Written in Kotlin. Minimum supported Android version is 4.4.

Roadmap

  • Another unit types: volume, weight
  • Slavic calendar
  • ...

Download

Get it on Google Play

About

If you are reading a literary book about 18th century, or studying history, or you feel limited with the standard units of measurements, or by any other means find yourself curious about historic units used one or two centuries ago, like when it was time of Russian Empire, then this app might take you interest.

Jump into the new world measured by arshin, versta, sazhen. Measure like Russian.

Privacy policy

See this privacy policy for details.

Screenshots

Main screen 1 Main screen 2 Landscape mode

For developers

Architecture

  • Kotlin
  • KotlinPoet for genereting complete graph of conversions
  • ViewPager
  • RecyclerView
  • Simple recursive descent parser in the calculator
  • SharedPreferences for persistancy
  • Markwon Markdown library without WebView requirement
  • Observer pattern used in the Main Activity. Child fragments call method in the activity and depending on the layout if other fragments exist, then the message will be delivered to them.
  • Different layouts: landscape (no main panels), tablet landscape (additional info panel), portrait, spacious portrait (additional info panel). Smart watch and auto layouts are in the roadmap.

How to use Ratio Generator

To generate just for one unit type:

set unit=Angle
gradle -PimperialUnits=%unit%Units.kt ratiogenerator:runRatioGenerator --args="--className io.github.mikolasan.ratiogenerator.Min%unit%Units --objectName %unit%Units"

Generate for all units:

generate_units.bat

License

MIT