CodeCampus là một nền tảng trực tuyến được thiết kế để học lập trình. Nền tảng hỗ trợ nhiều vai trò như học sinh, giáo viên, phụ huynh, quản trị viên và tổ chức (trường học/tổ chức). Các tính năng bao gồm xác thực người dùng, quản lý hồ sơ, diễn đàn thảo luận, nộp bài tập và bài thi, đánh giá, tài nguyên học tập, thanh toán, thông báo và tích hợp AI.
Kho lưu trữ này chứa các tài liệu lập kế hoạch, câu chuyện người dùng, trường hợp sử dụng và cấu trúc ban đầu để phát triển ứng dụng CodeCampus. Dự án được xây dựng dựa trên kiến trúc microservices, tập trung vào khả năng mở rộng, bảo mật và trải nghiệm người dùng.
- Cung cấp các bài tập lập trình tương tác với phản hồi thời gian thực.
- Thúc đẩy thảo luận cộng đồng qua diễn đàn công khai và riêng tư.
- Hỗ trợ giáo viên tạo và quản lý bài tập, bài thi và tài nguyên.
- Hỗ trợ các tính năng cao cấp qua đăng ký và tiền ảo.
- Tích hợp AI để đề xuất, đánh giá và kiểm duyệt nội dung.
- Đảm bảo xác thực an toàn và bảo mật dữ liệu.
- Là học sinh: Đăng ký, duyệt bài tập, nộp mã nguồn, tham gia diễn đàn.
- Là giáo viên: Tạo bài tập, theo dõi tiến độ, kiểm duyệt nội dung.
- Là quản trị viên: Quản lý người dùng, xem báo cáo, cấu hình hệ thống.
- Đăng ký người dùng qua Google/Facebook hoặc email/mật khẩu.
- Xác minh email bằng OTP.
- Đăng nhập cho người dùng, quản trị viên và tổ chức.
- Đặt lại mật khẩu, khóa/mở khóa tài khoản bởi quản trị viên.
- Chức năng đăng xuất.
- Cập nhật thông tin hồ sơ cá nhân.
- Lưu/yêu thích bài tập.
- Xem tiến độ học tập (bài tập đã hoàn thành, điểm số, biểu đồ).
- Thông báo về các cột mốc.
- Role giáo viên: Quản lý lớp học, bài tập đã tạo.
- Liên kết phụ huynh để theo dõi tiến độ của con.
- Tương tác xã hội: Theo dõi/chặn người dùng, xem hồ sơ người khác.
- Tạo bài viết/chủ đề trong diễn đàn công khai hoặc nội bộ tổ chức.
- Bình luận, thích/không thích, đính kèm tệp (mã nguồn, hình ảnh).
- Tìm kiếm bài viết theo từ khóa, thẻ, bộ lọc.
- AI đề xuất bài viết liên quan.
- Kiểm duyệt: Xóa/sửa bài viết/bình luận bởi quản trị viên/giáo viên.
- Thông báo cho phản hồi, lượt thích, bài viết mới.
- Tạo tổ chức với logo, mô tả, và các thông tin liên quan khác.
- Thêm thành viên thủ công hoặc qua nhập Excel.
- Diễn đàn nội bộ với kiểm duyệt AI.
- Báo cáo vi phạm, bình luận thời gian thực.
- Bảng điều khiển cho thống kê hoạt động.
- Nhật ký kiểm tra và giới hạn tốc độ cho API.
- Tạo bài kiểm tra/bài tập mã nguồn với câu hỏi do AI tạo.
- Tìm kiếm/lọc bài tập theo độ khó, chủ đề.
- Nộp mã nguồn, chạy thử nghiệm thời gian thực (hỗ trợ C, C++, Java, Python, v.v.).
- Xem lịch sử nộp bài, điểm số, phản hồi AI về lỗi/khoảng trống kiến thức.
- Công cụ giáo viên: Thêm test case, đặt thời gian, chống gian lận, báo cáo hiệu suất học sinh.
- Xếp hạng, phần thưởng dựa trên điểm số/vị trí.
- Phân tích phong cách mã nguồn bằng AI, phát hiện mã độc.
- Quản lý/tải lên tài liệu/video (hỗ trợ chuyển mã).
- Phân loại theo chủ đề/mức độ.
- Công cụ học sinh: Tìm kiếm, tạo danh sách phát, mua bằng điểm/tiền.
- Theo dõi tiến độ, thông báo về tài nguyên mới.
- Code Playground: Trình chỉnh sửa giống IDE với kiểm soát phiên bản.
- Đăng ký gói cao cấp.
- Tạo/phân phối phiếu giảm giá.
- Hủy đăng ký với hoàn tiền theo tỷ lệ.
- Nạp tiền ảo.
- CAPTCHA để ngăn chặn gian lận.
- Báo cáo doanh thu cho quản trị viên.
- Báo cáo PDF hàng tháng cho phụ huynh.
- AI dự đoán tỷ lệ hoàn thành khóa học.
- Lộ trình học tập cá nhân hóa.
- So sánh trung bình lớp học.
- Thông báo qua email/SMS/push cho bài viết mới, bài tập, thanh toán.
- Tùy chỉnh tùy chọn thông báo.
- Nhắc nhở 24 giờ trước hạn chót.
- Thông báo hàng loạt cho tổ chức.
- Tìm kiếm được lưu vào bộ nhớ cache (sử dụng Redis) cho bài viết diễn đàn.
- API Gemini để đề xuất câu hỏi, dịch thuật, tóm tắt.
- Phân tích khoảng trống kiến thức, phát hiện spam.
- CI/CD với GitHub Actions.
- Giám sát qua Grafana/Prometheus.
- Yêu cầu phi chức năng: Bảo mật dữ liệu, hiệu suất, khả năng mở rộng.
- Backend: Microservices (Java/Spring Boot, C#/.NET Core Web API).
- Frontend: Angular 19.2.14, NgRx, TypeScript, RxJS, Angular CLI
- Cơ sở dữ liệu: Neo4j, PostgreSQL, MongoDB, MS SQL Server.
- AI: Google Gemini API, mô hình NLP để phát hiện spam.
- Bộ nhớ cache: Redis.
- Giám sát: Grafana, Prometheus.
- Triển khai: Docker, Kubernetes, GitHub Actions cho CI/CD.
- Ngôn ngữ cho bài tập mã nguồn: C, C++, Java, Python, JavaScript, SQL (với thực thi trong môi trường sandbox).
- Git clone [repository-url]
- Cài đặt phụ thuộc
- Thiết lập biến môi trường
- Chạy cục bộ.
- Fork kho lưu trữ.
- Tạo nhánh tính năng:
git checkout -b feature/new-feature
. - Commit thay đổi:
git commit -m 'Thêm tính năng mới'
. - Đẩy lên nhánh:
git push origin feature/new-feature
. - Mở Pull Request.
- Nguyễn Đình An - BE: Java/Spring Boot
- Lưu Minh Nhật - BE: Java/Spring Boot
- Nguyễn Thị Xuân - BE: C#/.Net Core Web API
- Tô Quang Đức - FE
- Nguyễn Trà My - FE
Cập nhật lần cuối: 19 tháng 8, 2025