xatrock is an open-source java project that has been designed via several libraries and frameworks. it's an educational software which can helps teachers and students to manage their lessons, and also have an interaction with each other. in this system you can easily create new lesson, add your students and finally publish that. When you create that lesson, you can easily add some activities and exams. and other features that will be explained further.
- Javafx
- Swing
- MySql
- hibernate
- Apache Maven
On this page you can easily log into your account with couple of options:
- Normal login
- Login with QrCode Scanner:
Normal Login:
In this option you can easily writedown your email and your password and press Enter to login.
Qrcode Login:
you can scan your id qrcode with your webcam and simply login to your accountin fact this mechansim using Xatrock Computer Vision Protocol to hopefully login without any problem.
Now on this page you can easily signup and create new account
i should mention that every new user who can signup successfully will be added into main database of the project immediatly
We've used hibernate framework to handle all these transactions with database.
We have two kind of homepage:
- Teacher homepage:
- Options:
- Access to his lesson
- Chat
- Check current time
- Check Profile
- Abilities:
- Add new lesson
- Check other students
- Change Profile
- Options:
- Student homepage:
- Options:
- Same as teacher
- Ability:
- Change Profile
- Options:
Also we have dark theme in our GUI Design :) see this
- Teacher Lesson Page Controller:
- Attributes:
- Back to home page
- messenger of that lesson
- Functions:
- Add new student
- Enter exam grades
- Make new exam
- Create new homework
- Attributes:
- Student homepage Lesson Page Controller:
- Attributes:
- Same as teacher
- Functions:
- Check exams
- check his own grades
- Check newest homework
- Attributes:
you can see more lesson page design on Screen shot folder of the project
We use socket programming in order to connect client and server together. Although,we've implemented server via Singleton designing pattern.
You can create client as much as you want (no limit) *All Chats could be easily exported as pdf Messages would entirely save into database which means you have a simple cloud based messenger app :)
In this section teachers can easily create tests!
you should click on next question to add another question.
at the end you should click on FIX button to save questions into database and even export it as PDF.
Also you should check the correct answer.
if you see this after click on fix button, it means everythings went right
In this part students can simply access their points which has been collected from exams.
Also you can have excel export of your points and even PDF.
Students can easily upload or download their homeworks and also teachers can release new homeworks for students.
each part would be updated in case of new homework release and other actions that've been commited.
This is the final project of "Advanced Programming" course at Ferdowsi University of Mashhad.
Spring 2022,(Khordad 1401)