Dự án E-Learning này được xây dựng bằng cách sử dụng ReactJS cho phần giao diện người dùng (Frontend) và NodeJS cho phần xử lý logic và dữ liệu (Backend). Tôi cũng sử dụng các công cụ như Firebase và AWS để lưu trữ dữ liệu, cụ thể là PostgreSQL cho cơ sở dữ liệu SQL.
Một số chức năng của dự án:
- Đăng kí và đăng nhập: Sử dụng JWT để xác thực người dùng, cung cấp cả việc đăng nhập qua tài khoản Facebook và Google.
- Comment đa cấp: Cho phép người dùng bình luận và phản hồi trên nhiều cấp độ.
- Phân trang và tìm kiếm: Hiển thị dữ liệu theo từng trang và cho phép tìm kiếm và sắp xếp dữ liệu.
- Xem video khóa học và mua khóa học: Người dùng có thể xem các video khóa học và mua các khóa học.
- Bảng điều khiển quản trị viên: Cho phép quản trị viên có thể CRUD, quản lý danh mục, khóa học, bài học và người dùng.
- Phân quyền đơn cấp ( admin - user ): Phân chia quyền hạn giữa người dùng thông thường và quản trị viên.
Để truy cập vào bảng điều khiển quản trị viên, bạn có thể sử dụng tài khoản sau:
-
Tài khoản 1:
- Tên đăng nhập: [email protected]
- Mật khẩu: testadmin1
-
Tài khoản 2:
- Tên đăng nhập: [email protected]
- Mật khẩu: testadmin2
Tôi sử dụng JWT để xác thực người dùng. AccessToken có thời gian sống là 20 giây, kiểm tra accessToken khi người dùng thực hiện các yêu cầu quan trọng như đăng bài hoặc lấy dữ liệu khóa học của họ.
Để sử dụng đầy đủ chức năng, bạn cần cấu hình các tài khoản Firebase và AWS trong dự án.
Nếu bạn có bất kỳ câu hỏi hoặc đề xuất nào, xin vui lòng liên hệ với Tôi qua email: [email protected]
Trang Web: https://jdg-elearning.netlify.app/
Nếu khi vào mọi người thấy phần danh mục không có gì thì đợi khoảng 1-2 phút để render khởi động lại server, sau đó thì các chức năng hoạt động bình thường ạ !