🏋️ Tổng Quan Dự Án PNFitness là ứng dụng di động all-in-one về fitness và sức khỏe, được xây dựng trên nền tảng Flutter (cross-platform: Android, iOS, Web) với backend Laravel 11 . Ứng dụng cung cấp trải nghiệm tập luyện cá nhân hóa, quản lý dinh dưỡng thông minh, và tích hợp AI Chatbot hỗ trợ người dùng 24/7.
⚡ Công Nghệ Sử Dụng Thành phần Công nghệ Mobile App Flutter 3.4+ (Dart), MobX State Management Backend API Laravel 11, PHP 8.2, Laravel Sanctum Database MySQL AI Chatbot ChatGPT API (chat_gpt_sdk, chat_gpt_flutter) Authentication Firebase Auth, Google Sign-In, Apple Sign-In, OTP Cloud Services Firebase (Firestore, Crashlytics, Analytics, Cloud Messaging, Storage) Push Notification OneSignal, Awesome Notifications Payment Stripe, Razorpay, PayPal, Paystack, PayTabs, MyFatoorah, Braintree Video Player YouTube Player, Chewie, Video Player Ads Google AdMob (Banner, Interstitial, Native) Live Chat Crisp Chat Health Tracking Health API, Daily Pedometer Charts Syncfusion Flutter Charts Casting Flutter Chrome Cast
📱 Tính Năng Chính — Mobile App 🏠 Dashboard & Trang Chủ Dashboard tổng quan với thống kê calories, bước chân, lượng nước Banner slider quảng cáo & khuyến mãi Quick access đến workout, diet, recipes và community Hỗ trợ Dark Mode / Light Mode tự động theo hệ thống Đa ngôn ngữ (i18n) với hệ thống ngôn ngữ động từ server 💪 Quản Lý Bài Tập (Workout) Thư viện bài tập phong phú với phân loại theo body part, equipment, level, workout type Lịch trình tập luyện theo ngày với countdown timer & exercise duration tracking Video hướng dẫn tập (YouTube Player & local video) Hỗ trợ Chromecast — chiếu video bài tập lên TV Lịch sử tập luyện & theo dõi tiến trình cá nhân Yêu thích & bookmark bài tập 🥗 Chế Độ Dinh Dưỡng (Diet & Recipes) Quản lý chế độ ăn theo danh mục với chi tiết macro nutrients Hệ thống công thức nấu ăn (Recipes) với bước hướng dẫn chi tiết Phân loại theo category & tags, filter nâng cao Đánh giá & review công thức Kế hoạch ăn hàng ngày (Daily Meal Plan) tùy chỉnh Danh sách mua sắm (Shopping List) tự động tạo từ meal planQuản lý nguyên liệu, đơn vị đo & chuyển đổi đơn vị 🤖 AI Chatbot (FitBot) Tích hợp ChatGPT API — trợ lý fitness AI thông minh Chat text & hỗ trợ tạo ảnh AI Lưu trữ lịch sử hội thoại trên server Gợi ý bài tập, chế độ ăn & mẹo sức khỏe cá nhân hóa 💧 Theo Dõi Sức Khỏe Water Tracker — theo dõi lượng nước uống hàng ngày với đồ thị trực quanSteps Counter — đếm bước chân tích hợp Health API (Apple Health / Google Fit)Progress Tracking — theo dõi cân nặng, vòng eo và các chỉ số cơ thể qua biểu đồ SyncfusionHệ thống nhắc nhở (Reminders) cho bữa ăn & uống nước Thiết lập mục tiêu cá nhân (goal setting) 👥 Cộng Đồng (Community) Mạng xã hội nội bộ — đăng bài, like, bookmark, bình luận & trả lời bình luận Xem profile người dùng khác Hệ thống báo cáo bài viết vi phạm Chia sẻ bài viết qua mạng xã hội (Share Plus) 🛒 Cửa Hàng Sản Phẩm (Shop) Danh sách sản phẩm với phân loại theo category Chi tiết sản phẩm với hình ảnh & mô tả Tích hợp WebView cho mua hàng 💳 Thanh Toán & Subscription Hệ thống gói đăng ký (Subscription Plans) linh hoạt Tích hợp 7 cổng thanh toán : Stripe, Razorpay, PayPal, Paystack, PayTabs, MyFatoorah, Braintree Quản lý subscription & lịch sử thanh toán 🔐 Xác Thực & Bảo Mật Đăng ký / Đăng nhập bằng email, OTP Đăng nhập xã hội: Google Sign-In, Apple Sign-In Quên mật khẩu & xác thực OTP Laravel Sanctum API Token Authentication 🖥️ Tính Năng Backend — Admin Panel Dashboard tổng quan với thống kê người dùng & dữ liệuQuản lý CRUD đầy đủ: Users, Workouts, Exercises, Diets, Recipes, Products, Blog Posts Hệ thống phân quyền RBAC (Role-Based Access Control) với Spatie Permission Quản lý Sub-admin với quyền hạn tùy chỉnh Push Notification hàng loạt qua OneSignal Quản lý lịch học (Class Schedule) Quản lý gói subscription & cổng thanh toán Assign workout & diet cho từng user Quản lý ngôn ngữ động — thêm ngôn ngữ mới từ admin Quản lý community: duyệt bài, xóa bình luận, xử lý báo cáo Quản lý recipe: nguyên liệu, category, tag, đơn vị đo, bước hướng dẫn (drag & drop reorder) Xuất báo cáo người dùng (Excel, CSV, PDF) Banner slider quảng cáo Theo dõi login history & quản lý thiết bị đăng nhập admin Cấu hình hệ thống: AdMob IDs, ChatGPT API Key, OneSignal, Crisp Chat, v.v. 📊 Kiến Trúc Hệ Thống Mobile : Flutter + MobX (reactive state management) + REST APIBackend : Laravel 11 + MySQL + Laravel Sanctum + Laravel Modules (nwidart)Realtime : Firebase Firestore cho chat community + MQTT clientMedia : Spatie Media Library + Firebase StorageExport : Maatwebsite Excel + DomPDFDataTables : Yajra DataTables cho admin panel🎯 Điểm Nổi Bật ✅ All-in-one Fitness Platform — từ tập luyện, dinh dưỡng đến cộng đồng ✅ AI-Powered — ChatGPT chatbot cá nhân hóa trải nghiệm ✅ 7 cổng thanh toán — phục vụ thị trường toàn cầu ✅ Health Integration — Apple Health & Google Fit sync ✅ Chromecast Support — tập luyện với video trên TV ✅ Multi-language — hệ thống đa ngôn ngữ động ✅ Cross-platform — Android, iOS & Web từ cùng codebase Flutter ✅ Monetization Ready — AdMob + Subscription + Shop ✅ Admin Panel toàn diện — quản lý mọi khía cạnh từ web --- ## Các trường khác | Trường | Giá trị | |--------|---------| | **Client** | PNFitness | | **Link** | *(để trống hoặc link app store)* | | **GitHub repository URL** | *(để trống hoặc link repo)* | | **Status** | Published | | **Is featured?** | ✅ On | --- > [!IMPORTANT] > **Hướng dẫn sử dụng:** > 1. Copy nội dung **Description** vào ô "Short description" > 2. Trong phần **Content**, bấm nút **"Source"** trên thanh CKEditor > 3. Paste toàn bộ HTML content vào > 4. Upload ảnh thumbnail vào mục **Image** bên phải > 5. Điền Client = `PNFitness`, bật Is featured > 6. Bấm **Save**