Study Jam project

A simple Material You calculator.

History screen:

History screen


  • ? Built with Jetpack Compose, using ViewModel as data source
  • ? Dynamic color system, use color science to create consistent themes (press “AC” or “=” button to change color)
  • ? Integration with Android 12 themed icon API & Android 13 launch animation
  • ? Landscape support
  • ? Dark theme support
  • ? Calculation history (press “=” button to save expression to history)
  • ➕ Better nested parentheses support


  • This is only a demo application, the calculation is limited. It cannot be used for science purpose.
  • The main evaluation algorithm is related to RPN, code here.
  • The support of opposite numbers sucks, I use a FallbackEvaluator to operate on them.
  • The two algorithms I mentioned above are adapted from RosettaCode.


View Github