Skip to content

6002CEM-24-25/6002CEM-JUNJIE-NI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

FitnessApp

Overview

FitnessApp is a cross-platform mobile application developed using .NET MAUI that helps users track their fitness activities, monitor calories burned, manage exercise goals, and get real-time weather-based workout suggestions. The app offers a clean, user-friendly interface and is ideal for users who want to improve their health by logging daily exercise, setting targets, and calculating BMI.


Motivation

The app was built as part of a coursework project aimed at integrating multiple development skills:

  • Mobile application development with .NET MAUI
  • SQLite database integration
  • REST API consumption
  • User interface design for health and fitness tracking

The motivation stems from the increasing importance of fitness tracking in people’s everyday life. This app combines basic health tracking (weight, BMI) with real-time weather-based advice and persistent storage of workout history.


Key Features

Here’s what the user can see and do in the demo video:

✅ User Authentication

  • Login and Registration pages with simple username-password authentication using local SQLite storage.

🏃 Add & View Exercise Records

  • Users can:
    • Add new workout logs by selecting exercise type and duration.
    • View a list of previous workouts, showing duration, calories burned, and timestamp.

❌ Delete Records

  • Swipe or navigate to a separate delete page to remove old exercise records.

🌦️ Real-Time Weather + Suggestions

  • Enter a city name to fetch live weather via OpenWeatherMap API.
  • The app shows a weather description, temperature, and provides a custom suggestion for workouts based on the current temperature.

⚖️ Weight Tracking

  • Set your current body weight, which is used in calorie calculations.

📊 BMI Calculator

  • Dedicated page to enter height and weight, and compute BMI with classification (Underweight, Normal, Overweight, Obese).

🎯 Exercise Goal Tracking

  • Users can set a daily exercise goal (e.g., 60 minutes).
  • The app will show total exercise time today and indicate progress toward the goal.

Technologies Used

  • .NET MAUI – Cross-platform development
  • SQLite – Local data storage
  • OpenWeatherMap API – Weather data retrieval
  • C# – Logic and data binding
  • XAML – UI layout and controls

Project Structure

  • Pages/ – All XAML pages (MainPage, LoginPage, RegisterPage, AddExercisePage, DeleteExercisePage, BmiPage, GoalPage)
  • Models/ – Data models like User, ExerciseRecord, Goal
  • Services/ – Backend logic like FitnessAppDatabase, CalorieCalculator, WeatherService
  • AppShell.xaml – App navigation structure

Conclusion

FitnessApp offers a simple yet complete experience for casual fitness tracking, with added value through weather-based advice and health metrics. It demonstrates the power and flexibility of .NET MAUI in building real-world, data-driven mobile applications.