A comprehensive Flutter app that estimates your stress levels using cardiovascular markers and provides personalised recommendations to help you relax and recover.
- About
- Features
- Screenshots
- Getting Started
- Usage
- Tech Stack
- Stress Calculation Logic
- Stress Level Interpretation
- Contributing
- License
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.
- 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
- 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# 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 runTo build a release APK:
flutter build apk --release- Launch the app.
- On the Home screen you will see a greeting, a mood check-in strip, and three main action cards.
- Tap Calculate Stress โ enter your Systolic BP, Diastolic BP, Pulse Rate, and optionally your Age and a Name label โ tap Calculate Stress Level.
- The Result screen shows your stress score, category, a description, and a list of personalised recommendations with step-by-step guidance.
- Use View Statistics to explore charts and trends across all saved readings.
- Use View History to browse or delete individual past measurements.
- HTML
- CSS
- JavaScript
- 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 |
The calculator uses a 2-step rule-based model to determine stress.
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
Excel Logic: =IF(C2=0,"No Stress",IF(C2=1,"Mild Stress","High Stress"))
| Stress Score | Condition | Result |
|---|---|---|
| 0 | Both values normal | ๐ข No Stress |
| 1 | One value elevated | ๐ก Mild Stress |
| 2 | Both values elevated | ๐ด High Stress |
-
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
Contributions are welcome! Please read CONTRIBUTING.md for guidelines on how to get started.
This project is licensed under the APACHE2.0 License โ see the LICENSE file for details.