Sensible Flow
Sensible flow uses an Inertial Measurement Unit to determine the tap handle movement and position. The devices comes with flow profiles for different types water flow. To improve the accuracy a custom flow profile can be setup, and each tap position is assigned a flow rate, this can be done automatically with a flow rate sensor or by manually measuring flow rate with a cup. Once the water flow has been inferred from the tap handle position, the data is sent to the Base unit via Bluetooth Low Energy. The Base unit displays the estimated total water consumed for a particular day (updates real time) and sends data to the internet via WiFi to monitor water consumption for the whole year. Multiple Sensible Flow units can be connected to a single Base unit and monitor water usage across various taps.
Sensible Flow Lite
Sensible Flow Lite counts how long a tap remains open and gives you a beep after 1 min or 1 litre (approx) of water consumed. It only costs 1$ to build.

Libraries / Software used:
1) Adafruit GFX Library (https://github.com/adafruit/Adafruit-GFX-Library) is under the BSD License.
2) Adafruit SSD1306 Library (https://github.com/adafruit/Adafruit_SSD1306) is under the BSD License.
3) Arduino IDE (https://github.com/arduino/Arduino) is under the GPL V2 License.
4) x360ce (https://github.com/x360ce/x360ce) is under the GPL V3 License.
5) FreeCAD (https://www.freecadweb.org/) is under the LGPL-2.0-or-later License.
6) Arduino-ESP32 library (https://github.com/espressif/arduino-esp32) is under the LGPL-2.1 license.
7) SparkFun_MPU-9250 Library (https://github.com/sparkfun/SparkFun_MPU-9250-DMP_Arduino_Library) is under the MIT License.