Giới Thiệu - Nền tảng tập luyện thể hình trực tuyến
Fitness Online là dự án tốt nghiệp được thực hiện bởi nhóm Industrious Bees, sinh viên năm cuối
trường cao đẳng FPT Polytechnic. Dự án được mô phỏng theo Udemy, nơi các huấn luyện viên tạo khóa tập và người
dùng có thể đăng ký tập trực tuyến.
Fitness Online là một nền tảng web hỗ trợ người dùng lựa chọn, đăng ký và theo dõi các gói tập luyện
thể hình phù hợp với mục tiêu cá nhân (giảm cân, tăng cơ, giữ dáng...). Nền tảng này cung cấp các khóa tập
trực tuyến từ các huấn luyện viên chuyên nghiệp, cho phép người dùng tập luyện tại nhà một cách tiện lợi và
hiệu quả.
Hiện dự án đang được lưu trữ tại Github:
https://github.com/BiUsagi/DATN_FitnessOnline.git
Giao diện trang chủ của nền tảng Fitness Online
Tính Năng Chính
- Hỗ trợ người dùng tìm kiếm khóa tập
- Cho phép người dùng đăng ký khóa tập
- Hỗ trợ người dùng theo dõi tiến độ tập luyện
- Cho phép người dùng đánh giá và bình luận về khóa tập
- Hỗ trợ huấn luyện viên tạo và quản lý khóa tập
- Cho phép huấn luyện viên theo dõi tiến độ của người dùng
- Cho phép người dùng quản lý các gói tập đã đăng ký
Kỹ thuật sử dụng
- Frontend: HTML, CSS, JavaScript, Bootstrap
- Backend: PHP (Laravel), JavaScript
- Cơ sở dữ liệu: MySQL
- Quản lý phiên bản: Git, Github
-
Xử lý API & AJAX: Sử dụng AJAX để gửi và nhận dữ liệu qua API, giúp cập nhật nội dung trang nhanh
chóng mà không cần tải lại toàn bộ trang.
- Tối ưu hóa trải nghiệm: Lazy load hình ảnh, phân trang, loading UI mượt
Kinh nghiệm nhận được từ dự án
Trong quá trình thực hiện dự án, tôi đã học được nhiều kỹ năng quan trọng không chỉ về mặt kỹ thuật, mà còn về
làm việc nhóm và quản lý tiến độ:
-
Phân tích và thiết kế hệ thống: Chuyển yêu cầu người dùng thành chức năng thực tế, thiết kế sơ đồ
quan hệ CSDL (ERD).
-
Thành thạo Laravel: Sử dụng Eloquent ORM, xây dựng controller logic, validate form, phân quyền truy
cập, upload file, tạo API JSON.
-
AJAX & RESTful API: Sử dụng AJAX để gửi và nhận dữ liệu qua API, cập nhật nội dung trang nhanh chóng.
-
Teamwork & Git: Làm việc nhóm hiệu quả với Git, phân chia module, xử lý xung đột khi merge, viết
commit message rõ ràng.
-
Trải nghiệm thực tế: Hiểu luồng vận hành hệ thống sản phẩm hoàn chỉnh, tối ưu hiệu suất query, tạo
trải nghiệm người dùng tốt hơn.
Công việc đảm nhận trong dự án này
Trong dự án Fitness Online, tôi đảm nhận các nhiệm vụ sau:
- Phân tích yêu cầu: Tham gia phân tích và thiết kế hệ thống, xác định các chức năng cần có.
- Thiết kế cơ sở dữ liệu: Xây dựng sơ đồ quan hệ CSDL (ERD).
- Phát triển frontend: Sử dụng HTML, CSS, Bootstrap để tạo và chỉnh sửa các trang.
Giao diện trang hồ sơ huấn luyện viên
-
Phát triển giao diện người dùng: Sử dụng Bootstrap để tạo giao diện responsive, thân thiện với người
dùng.
-
Phát triển backend: Sử dụng Laravel để xây dựng các controller, model, và route cho các chức năng:
- Quản lý người dùng (xem, sửa, hạn chế, phân quyền)
- Quản lý đơn hàng các khóa tập
- Gửi khảo sát người dùng và gợi ý gói tập phù hợp
- Người dùng đăng kí làm huấn luyện viên
Đăng ký làm huấn luyện viên
Duyệt hồ sơ
-
Xử lý AJAX & API: Tạo API JSON để gửi và nhận dữ liệu khảo sát người dùng, gợi ý gói tập phù hợp.
Chức năng hỗ trợ tìm kiếm khóa học
-
Quản lý phiên bản với Git: Sử dụng Git để quản lý mã nguồn, phân chia module và xử lý xung đột khi
merge.