Nguyen Trung Hau2026-07-013 min read

Health App

Flutter health management application with dashboard, periodic examination history, trend charts, body map, video guidance, and profile management.

FlutterClean ArchitectureBLoC/CubitRetrofitfl_chartDataTable2Localization

Overview

Health App is a health management application built from initial project setup through deployment and client handover. It supports examination history, daily health indicators, trend charts, body-region visualization, video guidance, and user profile management.

Architecture

The app uses Clean Architecture with clearly separated data, domain, presentation, entity, repository, use case, data source, and UI layers. Login/logout, session persistence, and global authentication state management were implemented with AuthBloc and Flutter Secure Storage.

Key Features

  • Health dashboard with an interactive body map, body-region indicators, pictograms, and health data visualization.
  • Periodic health examination history screens using DataTable2 with yearly data display, loading states, refresh flow, and navigation to detail screens.
  • Trend charts using fl_chart for blood pressure, heart rate, and examination indicators by time range.
  • Comparison logic between periodic examination data and daily measurement data.
  • User profile management with form validation, dropdowns, date picker, data change detection, and API-based profile update.
  • Multilingual support for Vietnamese, Japanese, and English using Flutter localization and ARB files.
  • Video guidance using youtube_player_iframe, video_player, and Chewie with fullscreen handling, orientation control, and internet connection checks.

Tech Stack

Flutter, Dart, Clean Architecture, BLoC/Cubit, GetIt, Injectable, Dio, Retrofit, Freezed, JsonSerializable, AutoRoute, Flutter Secure Storage, SharedPreferences, fl_chart, DataTable2, Flutter SVG, Lottie, YouTube Player, Chewie, Flutter localization ARB, FVM, Mason, build_runner, Makefile.