Giter Club home page Giter Club logo

thermometer's Introduction

Thermometer

This is an application for the Android platform that is my final project. With the help of this software, it's possible to see the temperature and humidity of the environment in real-time on a mobile device. For this project, I used the ESP32 development board and the DHT22 sensor, and the Arduino code for this project is available in this repository.

Environment Variables

To run this project, you will need to create a Supabase account and take API URL and API KEY and the create Credentials.h file in Thermometer/Arduino/Thermometer-Arduino/src directory and add the following variables to your Credentials.h file

1 - String SSID ="your wifi ssid";

2 - String PASSWORD ="your wifi password";

3 - String API_URL ="your api url from supabase dashboard";

4 - String API_KEY ="you api key from supabase dashboard";

5 - String temperatureTable ="a table name for temperature with "celcius" (float type) and "fahrenheit" (float type) columns";

6 - String humidityTable ="a table name for humidity with "percent" (float type) column"

Screenshots

drawing

Features

  • Offline-first: The app can be accessed even without an internet connection.
  • Real-Time: Sync the temperature and humidity in real-time
  • Temperature Alarm: You will receive a notification when the temperature reaches a certain value.
  • Humidity Alarm: You will receive a notification when the humidity reaches a certain value.

Built With

  • Kotlin - First class and official programming language for Android development.

  • Coroutines - For asynchronous and more..

  • Flow - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.

  • Jetpack Compose - Modern toolkit for building native UIs.

  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.

    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • Navigation Components - The Navigation component provides support for Jetpack Compose applications. You can navigate between composables while taking advantage of the Navigation component's infrastructure and features.
    • Room - Persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.
  • Dependency Injection

    • Hilt - Easier way to incorporate Dagger DI into Android application.
  • Supabase - Provides a full Postgres database for every project with Realtime functionality, database backups, extensions, and more.

thermometer's People

Contributors

ramink78 avatar

Stargazers

Erfan Sadigh Nejati avatar Masoud Karimi avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.