A web-based Classroom application to connect students and teachers like Google Classroom.
There are 3 types of users in the app. Admins (aka school staff), Teachers, and Students.
For full design details open the design folder.
- Front-end: Vue.js
- Back-end: Spring Boot, Spring JPA
- DataBase: MySQL
- Containerization: Docker
- Admins add students, teachers, and other admins to the system.
- Admins create/edit/delete courses.
- Admins assign teachers and students to courses.
- Users can log in via their email and password.
- Teachers and students can view all their courses.
- A teacher can add a post, an announcement, or an assignment to a specific course.
- A student can add post or question to a specific course or submit a solution for an assignment.
- Teachers can grade students' solutions.
- Teachers and students can add comments on all types of posts.
- Posts are assigned to different views according to their type.
- Every student has his own calender with due dates of his assignments.
- Cookies are used to manage the user session.