Skip to content

A dashboard webapp for controlling and monitoring smart home devices. Including features for device integration and automated routines.

Notifications You must be signed in to change notification settings

WardZid/smart-home-dashboard

Repository files navigation

Smart Home Automation Dashboard

Welcome to the Smart Home Automation Dashboard repository! This project aims to provide a comprehensive solution for managing and controlling various smart home devices from a centralized web application.

GitHub stars GitHub forks GitHub watchers GitHub issues GitHub commit activity

Features

  • User Authentication: Secure user authentication system using JSON Web Tokens (JWT).
    • Access Token: A short lived session token.
    • Refresh Token: A longer lifespan token assigned on logging in and is used to retrieve a new access token in the event of an outdated access token without the need for the user to renter their credentials.
  • Dashboard Overview: View a summary of all connected smart devices and their current status.
  • Device Control: Control individual devices remotely, including lights, thermostats, security cameras, and more.
  • Data Visualization: Visualize historical data and analytics for energy consumption, temperature trends, and other relevant metrics.
  • Responsive Design: Built with React and Tailwind CSS, ensuring compatibility with various screen sizes and devices.

Technologies Used

  • React: Frontend framework for building user interfaces.
  • TypeScript: Typed superset of JavaScript for enhanced code quality and development experience.
  • Tailwind CSS: Utility-first CSS framework for rapid UI development.
  • MongoDB: NoSQL database for storing device configurations, user data, and historical analytics.
  • JWT: JSON Web Tokens for secure authentication and authorization.

Getting Started

To get a local copy up and running follow these simple steps:

  1. Clone the repository:

    git clone https://github.com/WardZid/smart-home-dashboard.git
  2. Install dependencies:

    cd smart-home-dashboard
    npm install
  3. Start the development server:

    npm start
  4. Access the application:

    Open http://localhost:3000 in your browser.

Build Script

To build the project for deployment, run:

npm run build

This command will generate a production-ready build in the docs folder.

Contributing

Contributions are welcome! If you'd like to contribute to this project, please follow these guidelines:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/your-feature).
  3. Commit your changes (git commit -am 'Add some feature').
  4. Push to the branch (git push origin feature/your-feature).
  5. Create a new Pull Request.

About

A dashboard webapp for controlling and monitoring smart home devices. Including features for device integration and automated routines.

Resources

Stars

Watchers

Forks