Welcome to VibeOut-IoT, an innovative fitness platform that tailors workouts based on your physical metrics and emotional state. By leveraging ESP32 technology, heart rate monitoring, and AI emotion detection, VibeOut creates a personalized fitness experience that adapts to your needs.
In todayโs fast-paced world, understanding your emotional state while working out can enhance your fitness journey. VibeOut combines heart rate and SpO2 monitoring with AI-driven emotion detection to offer a unique approach to fitness. This project aims to make workouts more effective and sustainable by aligning them with both your physical and emotional health.
- Real-Time Monitoring: Track heart rate and SpO2 levels continuously.
- Emotion Detection: Utilize AI to analyze emotional states.
- Personalized Workouts: Adapt workouts based on your metrics and emotions.
- User-Friendly Interface: Built with ReactJS for an intuitive experience.
- Cloud Integration: Store and analyze data using FastAPI and ThingSpeak.
- Analytics Dashboard: View real-time data and workout analysis.
To begin using VibeOut-IoT, follow these steps to set up your environment.
Before you start, ensure you have the following:
- An ESP32 development board
- MAX30102 heart rate and SpO2 sensor
- Arduino IDE installed
- Python 3.x installed
- Node.js and npm for ReactJS
-
Clone the Repository:
git clone https://github.com/alihurmat/VibeOut-IoT.git cd VibeOut-IoT
-
Set Up the Arduino Environment:
- Open the Arduino IDE.
- Install the ESP32 board package via the Board Manager.
- Install the necessary libraries for the MAX30102 sensor.
-
Upload the Code:
- Open the Arduino sketch located in the
arduino
folder. - Connect your ESP32 board to your computer.
- Select the correct port and upload the code.
- Open the Arduino sketch located in the
-
Set Up the Backend:
- Navigate to the
backend
folder. - Install the required Python packages:
pip install -r requirements.txt
- Run the FastAPI server:
uvicorn main:app --reload
- Navigate to the
-
Set Up the Frontend:
- Navigate to the
frontend
folder. - Install the necessary npm packages:
npm install
- Start the React application:
npm start
- Navigate to the
Now you can access the application on your browser.
Once everything is set up, you can start using VibeOut-IoT.
- Connect the Sensor: Ensure your MAX30102 sensor is properly connected to the ESP32 board.
- Launch the Application: Open your web browser and navigate to the address where your React app is running (usually
http://localhost:3000
). - Start Monitoring: Begin your workout. The application will monitor your heart rate and SpO2 levels in real-time.
- View Analytics: After your workout, you can analyze your performance and emotional state through the dashboard.
- ESP32: A low-cost, low-power system on a chip with integrated Wi-Fi and Bluetooth.
- MAX30102: A heart rate and SpO2 sensor that uses photoplethysmography.
- Arduino: Used for programming the ESP32.
- FastAPI: A modern web framework for building APIs with Python.
- ReactJS: A JavaScript library for building user interfaces.
- ThingSpeak: An IoT analytics platform that allows you to visualize and analyze data.
- The ESP32 reads data from the MAX30102 sensor.
- The data is sent to the FastAPI backend.
- The backend processes the data and sends it to the React frontend for visualization.
- Users can interact with the dashboard to view their performance metrics.
We welcome contributions to improve VibeOut-IoT. If you have ideas or suggestions, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Commit your changes and push to your fork.
- Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or feedback, please reach out:
- Ali Hurmat: GitHub Profile
To download the latest release of VibeOut-IoT, visit the Releases section. You can find the necessary files to download and execute.
For updates and new features, always check the Releases section.
With VibeOut-IoT, you can take control of your fitness journey in a way that respects both your body and your mind. Join us in redefining fitness through technology!