Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dizzydroid/asu_juniorproject

ByteWise: A Java-based educational platform for the CSE231s course, connecting students and instructors.
https://github.com/dizzydroid/asu_juniorproject

bytewise course course-project course-system java jdk junior-project oop project

Last synced: 4 months ago
JSON representation

ByteWise: A Java-based educational platform for the CSE231s course, connecting students and instructors.

Awesome Lists containing this project

README

        



# ByteWise: Online Course Management System 🎓

ByteWise is an innovative online course management system developed as a project for CSE231s, Junior Year at FOE - Ain Shams University (ASU). This Java-based system is designed to enhance learning through gamification elements, intelligent course sorting, and a personalized course recommendation feature. It adheres to object-oriented programming principles and showcases capabilities such as user management, course handling, and comprehensive assessments.

## Features 🌟

- 👤 **User Profiles**: Supports multiple user roles including Students, Instructors, and Admins.
- ⚙ **Course Management**: Offers diverse types of courses (VideoCourse, QuizCourse, InteractiveCourse) with full CRUD operations.
- 🕹 **Gamification**: Incorporates points, badges, achievements, and leaderboards to motivate learners.
- 📁 **Advanced Sorting**: Utilizes a custom `Sortable` interface to sort courses based on various criteria.
- 📝 **Assessments**: Implements quizzes and assessments in courses through the `Assessable` interface.
- ❓ **Course Recommendations**: Features a "Find Me a Course" button that recommends courses based on user-selected tags.
- ⚠️ **Exception Handling**: Provides robust handling of both common and uncommon errors to ensure a smooth user experience.
- 💻 **Interactive UI**: Offers a choice between Command Line Interface (CLI) and Graphical User Interface (GUI) for user interactions.

## Repository contents 📁
- [**`src/main`**](src/main): Contains the main source code of the project.

    *-> includes both the CLI and GUI packages.*
- [**`src/test`**](src/test): Contains the unit tests conducted for the project.
- [**`assets/`**](assets): Contains the project's assets, including images and diagrams.
- [**`docs/`**](docs): Contains the project's documentation.

## Technologies 💻

- **Java**: Core programming language.
- **JUnit**: Used for unit testing to ensure code quality.
- **JavaFX**: GUI development.
- **Figma**: Used for designing the project's wireframes.
- **Git**: Version control system.

## Acknowledgements 🙏
*Special thanks to our course instructors, [**Dr. Nesma**](https://scholar.google.com.eg/citations?user=qLAvlbIAAAAJ) and [**Eng. Nourhan**](https://www.researchgate.net/profile/Nourhan-Shaban-4) for their guidance and support.*



and finally, **Thanks to the team behind the magic**:
- [dizzydroid](https://github.com/dizzydroid)
- [unauthorised-401](https://github.com/unauthorised-401)
- [DopeBiscuit](https://github.com/DopeBiscuit)
- [seifelwarwary](https://github.com/seifelwarwary)
- [SeifT101](https://github.com/SeifT101)
___________________________________________________________________
### **Questions?** Head over to the [discussions](https://github.com/dizzydroid/ASU_JuniorProject/discussions) tab and fire away!
___________________________________________________________________

Thanks for visiting 😊