Skip to content
/ ViPT Public

ViPT is a school project done by me (Lam) and Tung to support our own training and nutrition. If you find it useful, you can also use it, or customize it for yourself.

License

Notifications You must be signed in to change notification settings

ltk84/ViPT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ViPT

tag tag tag os framework framework

school subject contributors


ViPT Logo

Virtual Personal Trainer
Đây là một đồ án môn học

Thế giới ngày càng phát triển, nhu cầu của con người ngày càng nâng cao, đặc biệt là sức khỏe. 🚴

Để có thể đảm bảo sức khỏe cho cơ thể của chúng ta một cách khoa học, chúng ta cần phải luyện tập và ăn uống điều độ. 🥬

Và ViPT sẽ hỗ trợ bạn làm điều đó. ✨


📝 Mục lục

Giới thiệu

ViPT là một ứng dụng di động hỗ trợ luyện tập và dinh dưỡng. ViPT sẽ giúp bạn theo dõi quá trình luyện tập của bạn, theo dõi lượng calories đốt cháy cũng như calories nạp vào từ việc ăn của bạn. Ngoài ra, ViPT còn có thể đề xuất cho bạn lộ trình để giúp bạn đạt được mục tiêu cân nặng của mình.

ViPT cung cấp cho bạn đa dạng các bài tập và kèm theo đó là trình hỗ trợ luyện tập cho bạn, cho phép bạn tùy chỉnh thời gian luyện tập mỗi bài, thời gian nghỉ mỗi bài, số vòng, số bài tập mỗi vòng và nhiều hơn thế nữa.

Với hệ thống thư viện các món ăn, bạn có thể tham khảo để tự làm cho mình những món ăn mới lạ và lành mạnh, đảm bảo cho quá trình luyện tập và ăn uống của mình.

Ngoài ra, ViPT còn cung cấp trình theo dõi nước uống, trình theo dõi số bước chân mỗi ngày, trình hỗ trợ Fasting (quá trình không ăn uống), hơn nữa còn có tính năng thống kê dữ liệu, tính năng lưu hình ảnh quá trình. Để xem cụ thể hơn, bạn có thể xem qua phần Tính năng.

Bắt đầu

Điều kiện tiên quyết

Android 4.1 (API Level 16) trở lên.

Cài đặt

Tải file .apk tại đây và cài đặt lên điện thoại (Android).

Dành cho việc phát triển ứng dụng:

Cài đặt flutter theo hướng dẫn tại đây.

Clone repository của ViPT từ github về máy:

$ git clone https://github.com/ltk84/vipt.git

Chạy lệnh bên dưới bên trong thư mục của project ViPT:

$ flutter pub get

Sau đó mở công cụ phát triển (development tool) và chạy ứng dụng trên máy ảo.

Có thể tham khảo thêm tại đây (Flutter documentation).

Giao diện

Tính năng

Xác thực người dùng

  • Người dùng truy cập hệ thống với tài khoản Google/Facebook.

Đề xuất lộ trình

  • Đề xuất lộ trình tập luyện dựa trên mục tiêu cân nặng.
    • Đề xuất danh sách luyện tập theo ngày.
    • Đề xuất danh sách món ăn theo ngày.
    • Đề xuất calories mục tiêu mỗi ngày.
    • Theo dõi hiệu số calories.
    • Theo dõi tiến trình.
      • Cập nhật tiến trình dựa trên hiệu số calories và calories mục tiêu mỗi ngày.
    • Thay đổi mục tiêu cân nặng.
    • Điều hướng nhanh đến theo dõi kế hoạch mỗi ngày, thống kê.
    • Bắt đầu lại lộ trình.
    • Thống kê kết thúc lộ trình.

Kế hoạch mỗi ngày

  • Theo dõi calories từ quá trình luyện tập mỗi ngày.
    • Log calories từ việc luyện tập.
    • Tự động log calories dựa trên phiên tập của người dùng.
    • Xóa log calories.
  • Theo dõi calories từ việc ăn mỗi ngày.
    • Log calories từ việc ăn.
      • Log với thông tin cụ thể.
      • Log với món ăn đã có sẵn.
        • Thay đổi số lượng thành phần của món ăn.
    • Xóa log calories.
  • Theo dõi lượng nước uống mỗi ngày.
    • Log lượng nước đã uống.
    • Xóa log lượng nước đã uống.
  • Theo dõi số bước chân mỗi ngày.
    • Bật/tắt theo dõi số bước chân mỗi ngày.
  • Đếm giờ Fasting (quá trình không ăn uống).
    • Tùy chỉnh thời gian Fasting.
    • Chạy đếm giờ Fasting.

Luyện tập

  • Tùy chỉnh thông số phiên tập (số bài tập, số vòng, số bài mỗi vòng, số thời gian mỗi bài tập, thời gian nghỉ, số lượt nghỉ, chu kỳ nghỉ).
  • Bắt đầu phiên tập.
    • Tạm dừng/Tiếp tục phiên tập.
    • Kết thúc phiên tập.

Thư viện

  • Bài tập
    • Xem danh sách bài tập.
    • Xem chi tiết bài tập.
  • Bộ luyện tập
    • Xem danh sách bộ luyện tập.
    • Xem chi tiết bộ luyện tập.
    • Quản lý bộ luyện tập tự chọn.
      • Xem danh sách bộ luyện tập.
      • Xem chi tiết bộ luyện tập.
      • Thêm/Sửa/Xóa bộ luyện tập tự chọn.
    • Bắt đầu phiên tập.
  • Món ăn
    • Xem danh sách món ăn.
    • Xem chi tiết món ăn.
  • Bộ dinh dưỡng
    • Xem danh sách bộ dinh dưỡng.
    • Xem chi tiết bộ dinh dưỡng.

Thống kê

  • Thống kê luyện tập.
  • Thống kê dinh dưỡng.
  • Thống kê nước uống.
  • Thống kê theo dõi bước chân.
  • Thống kê cân nặng.

Hình ảnh quá trình

  • Lưu hình ảnh trước/sau lấy từ Máy ảnh/Thư viện.
  • Giao diện so sánh hình ảnh trước và sau.

Cài đặt

  • Cập nhật thông tin người dùng.
  • Thay đổi mục tiêu cân nặng.
  • Đề xuất lộ trình mới.
  • Đăng xuất.

Công nghệ

Nhóm

ViPT được thực hiện bởi:


Made with contrib.rocks.


Đóng góp

Hãy cứ tự nhiên cùng tham gia vào việc phát triển ứng dụng này: Open an issue.

  1. Fork project.
  2. Tạo branch cho tính năng.
git checkout -b feature/super-feature
  1. Commit thay đổi của bạn.
git commit -m "Add super feature"
  1. Push lên remote branch.
git push origin feature/super-feature
  1. Tạo một Pull Request.

Hướng phát triển

Xây dựng lộ trình tự chọn

Tính năng này sẽ cho phép người dùng tùy chỉnh đề xuất lộ trình cho bản thân. Người dùng sẽ có thể tùy chọn những bài tập yêu thích của mình cũng như những món ăn yêu thích của mình. Từ sự tùy chỉnh đó của người dùng, hệ thống sẽ tự động đề xuất sao cho phù hợp với mục tiêu nhưng vẫn đảm bảo được tính khoa học của việc luyện tập và dinh dưỡng.

Chạy bộ

Tính năng này sẽ hỗ trợ cho người dùng theo dõi việc chạy bộ của mình. Tại đây, người dùng có thể theo dõi khoảng cách, thời gian đã chạy/đi bộ cũng như có thể xem quãng đường đã chạy/đi bộ một cách trực quan với bản đồ được tích hợp bên trong ứng dụng.

Thử thách

Tính năng này cho phép người dùng bắt đầu tham gia những hoạt động thử thách và đạt được những thành tựu, thành tích có thể chia sẻ với bạn bè thông qua mạng xã hội. Tại đây, sau khi hoàn thành thử thách, người dùng nhận được một huy hiệu trong ứng dụng và có thể xem thành tích của riêng mình cũng như của những người tham gia khác để thi đua, cạnh tranh và phát triển.

Thành tựu

Tính năng này cung cấp đa dạng những loại huy hiệu mà người dùng có thể đạt được thông qua hoạt động luyện tập, ăn uống, đi bộ, chạy bộ, thực hiện thử thách, v.v.

Âm thanh

Với tính năng này, người dùng có thể tùy chỉnh những bài nhạc sẽ được bật trong phiên luyện tập của mình cũng như có thể tùy chỉnh bật/tắt/thay đổi giọng nói hướng dẫn của phiên tập.

Xem thêm

Hiện tại, hệ thống đề xuất lộ trình của ứng dụng đang hoạt động ở mức đề xuất dựa trên mục tiêu cân nặng. Từ đó cùng với những thông tin từ phía người dùng, hệ thống sẽ gợi ý một mức calories mục tiêu mỗi ngày cho người dùng trong việc luyện tập và ăn uống (kèm theo đó là danh sách bài tập và món ăn theo ngày được gợi ý để đạt được mức calories đó). Tuy nhiên, hệ thống có thể mở rộng mức đề xuất hơn nữa, không chỉ đề xuất dựa trên mục tiêu cân nặng của người dùng, mà thêm vào đó là cả mục tiêu về tăng cơ, giảm mỡ, giữ vóc dáng, v.v. Khi đó, hệ thống sẽ đòi hỏi nhiều thông tin đầu vào hơn từ người dùng, nhưng đổi lại thì việc đề xuất sẽ chính xác hơn khi đầu ra của việc đề xuất sẽ không chỉ là calories mục tiêu mỗi ngày (kèm theo những cái đã kể trên), mà còn có thêm mục tiêu của khối lượng các thành phần dinh dưỡng chính mỗi ngày (protein, fat, carbs). Từ đó thì người dùng có thể linh hoạt hơn trong việc tùy chỉnh các mục tiêu cho việc đề xuất, điều này sẽ làm cho việc đề xuất của hệ thống trở nên phù hợp với từng người dùng khác nhau (đề xuất bài tập, món ăn mỗi ngày với lượng thời gian, thành phần chính xác hơn).

Việc cho phép người dùng có thể tùy chỉnh mục tiêu đề xuất một cách cụ thể là bởi vì đối với mỗi người, trên thực tế, sẽ có lượng calories mỗi ngày khác nhau, và sẽ có chênh lệch so với mức mà ứng dụng đề xuất. Cho nên khi người dùng có thể linh hoạt trong việc tùy chỉnh sẽ giúp cho hệ thống tạo lộ trình một cách chính xác hơn.


Giấy phép

MIT License

Copyright (c) 2022 IT's Zoo Team

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

ViPT is a school project done by me (Lam) and Tung to support our own training and nutrition. If you find it useful, you can also use it, or customize it for yourself.

Topics

Resources

License

Stars

Watchers

Forks

Languages