Skip to content

eOzkull/Stress-Calculator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

5 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

๐Ÿ“Š Stress Calculator App

A comprehensive Flutter app that estimates your stress levels using cardiovascular markers and provides personalised recommendations to help you relax and recover.

Table of Contents

About

A simple and interactive Stress Calculator application that evaluates a user's stress level using basic physiological inputs like pulse rate and blood pressure.

This project demonstrates engineering and health-based logic using a clean UI and modular structure.
It is available as both a web application and an Android APK.


๐Ÿš€ Features

  • Stress Calculation โ€“ Enter blood pressure and pulse rate for an instant stress-level analysis (Relaxed โ†’ Mild โ†’ Moderate โ†’ High โ†’ Critical).
  • Personalised Recommendations โ€“ Breathing exercises, meditation techniques, physical activities, sensory grounding, and cognitive strategies matched to your stress level.
  • History Tracking โ€“ Every measurement is saved locally so you can review past readings at a glance.
  • Statistics & Trends โ€“ Interactive charts and trend analysis to visualise how your stress changes over time.
  • Mood Check-In โ€“ Log a quick emoji mood snapshot from the home screen.
  • Light & Dark Themes โ€“ Toggle between light and dark mode; preference is saved across sessions.
  • Multi-person support โ€“ Optionally label each measurement (e.g. "Dad", "Morning Check") to track multiple people.
  • Cross-platform โ€“ Runs on Android, iOS, Web, Windows, macOS, and Linux.

simply put :-

  • ๐Ÿ”ข Calculates stress using pulse rate and blood pressure
  • ๐Ÿ“ Uses simple rule-based physiological thresholds
  • ๐Ÿงฎ Real-time calculation and instant result display
  • ๐ŸŒ Web-based version (HTML, CSS, JavaScript)
  • ๐Ÿ“ฑ Android APK version for mobile devices
  • ๐Ÿงฉ Beginner-friendly and easy to understand
  • ๐ŸŽฏ Useful for educational and demonstration purposes

Getting Started

Prerequisites

  • Flutter SDK โ‰ฅ 3.0.0 (Dart โ‰ฅ 3.0.0)
  • A connected device or emulator (Android / iOS) or a desktop/web target enabled in Flutter

Verify your Flutter installation:

flutter doctor

Installation

# 1. Clone the repository
git clone https://github.com/eOzkull/Stress-Calculator.git
cd Stress-Calculator/App

# 2. Fetch dependencies
flutter pub get

# 3. Run the app (replace <device-id> with your target, or omit for the default)
flutter run

To build a release APK:

flutter build apk --release

Usage

  1. Launch the app.
  2. On the Home screen you will see a greeting, a mood check-in strip, and three main action cards.
  3. Tap Calculate Stress โ†’ enter your Systolic BP, Diastolic BP, Pulse Rate, and optionally your Age and a Name label โ†’ tap Calculate Stress Level.
  4. The Result screen shows your stress score, category, a description, and a list of personalised recommendations with step-by-step guidance.
  5. Use View Statistics to explore charts and trends across all saved readings.
  6. Use View History to browse or delete individual past measurements.

๐Ÿ› ๏ธ Tech Stack

๐ŸŒ Web Version

  • HTML
  • CSS
  • JavaScript

๐Ÿ“ฑ Mobile Version

  • Converted into Android APK
  • Installable on Android devices
Layer Technology
Framework Flutter 3.x
Language Dart 3.x
Charts fl_chart
Animations flutter_animate
Persistence shared_preferences
Localisation helpers intl

๐Ÿง  Stress Calculation Logic

The calculator uses a 2-step rule-based model to determine stress.


๐Ÿ”น Step 1: Stress Score Calculation

Excel Logic: =IF(A2>90,1,0)+IF(B2>130,1,0)

Inputs:

  • A2 โ†’ Pulse Rate (BPM)
  • B2 โ†’ Systolic Blood Pressure (mmHg)

Rules:

  • If Pulse > 90 โ†’ add 1 point
  • If BP > 130 โ†’ add 1 point

๐Ÿ‘‰ This produces a Stress Score (C2) between 0 and 2


๐Ÿ”น Step 2: Stress Level Classification

Excel Logic: =IF(C2=0,"No Stress",IF(C2=1,"Mild Stress","High Stress"))


๐Ÿ“Š Stress Level Interpretation

Stress Score Condition Result
0 Both values normal ๐ŸŸข No Stress
1 One value elevated ๐ŸŸก Mild Stress
2 Both values elevated ๐Ÿ”ด High Stress

๐Ÿ”ฎ Future Improvements

  • Add more health parameters (oxygen level, sleep, temperature)

  • Graph visualization of stress trends

  • Unit conversion support

  • User data storage & history tracking

  • iOS version of the app

Contributing

Contributions are welcome! Please read CONTRIBUTING.md for guidelines on how to get started.

License

License: Apache2.0 This project is licensed under the APACHE2.0 License โ€“ see the LICENSE file for details.

About

A specialized Flutter-based health-tech framework designed for real-time stress risk assessment. By integrating physiological data points like pulse rate and systolic blood pressure into a multi-tier classification algorithm, it provides immediate insight into user wellness. Developed as a flagship open-source project under the eOzka student initia

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors