Back to Projects
Lipht

Overview

Lipht is a mobile fitness application designed to help users track their workouts, nutrition, and sleep patterns. Developed using Flutter and Firebase, it features robust workout logging with custom program creation, exercise tracking (sets, reps, weight, RPE), and history visualization through charts (e.g., weekly volume). The nutrition section allows users to search a comprehensive food database, log meals across different categories (breakfast, lunch, dinner, snacks), and track daily caloric and macronutrient intake. A unique feature is the AI Meal Analysis, which leverages the OpenAI API to provide users with a nutritional score and feedback on their daily food logs. Lipht also includes sleep tracking (duration, quality, notes) and social features, enabling users to connect with friends, view their activity feed, and manage friend requests.

Challenges & Solutions

Integrating multiple Firebase services (Auth for login, Firestore for data storage) seamlessly and managing data synchronization. Designing and implementing a scalable Firestore data structure for user-specific logs (workouts, meals, sleep) and the bidirectional friend relationship system. Implementing the AI Meal Analysis feature, including crafting effective prompts for the OpenAI API, securely handling API keys, parsing varied responses, and managing asynchronous loading/error states. Managing complex application state across different tabs and features (auth status, friend lists, workout data, logs) using the Provider pattern and Firestore streams. Building interactive UI components, especially the workout program builder, detailed logging screens, and data visualization charts using fl_chart. Handling various asynchronous operations and potential errors gracefully throughout the user experience. Structuring the Flutter application logically using features, services, repositories, and providers.

What I Learned

  • 1Developed a full-stack mobile application using Flutter for the frontend and Firebase (Auth, Firestore) for the backend.
  • 2Implemented robust user authentication flows including Email/Password and Google Sign-In.
  • 3Designed and managed complex NoSQL data models in Firestore for storing user profiles, logs, custom programs, and social connections.
  • 4Mastered state management in Flutter using the Provider package, including ChangeNotifier and ProxyProvider for dependent states.
  • 5Successfully integrated and utilized a third-party AI API (OpenAI) for intelligent feature implementation (meal analysis).
  • 6Created data visualizations and charts using the fl_chart library based on user data stored in Firestore.
  • 7Built a multi-tabbed application with persistent navigation state and context-aware routing.
  • 8Managed asynchronous programming patterns (`Future`, `Stream`) extensively for network requests and real-time data updates.
  • 9Applied repository pattern for data abstraction and modular code structure.

Project Details

Technologies

Languages

Dart

Frontend

Flutter

Backend

OpenAI API (GPT-4o mini)REST API Integration

Database

Firebase (Authentication, Firestore)

Other

Provider (State Management)fl_chartGoogle Sign-InMobile Development

Gallery Preview

Lipht screenshot 1
Lipht screenshot 2

+1 more screenshots

Project Gallery

Lipht screenshot 1

Lipht - View 1

Lipht screenshot 2

Lipht - View 2

Lipht screenshot 3

Lipht - View 3