/LMS_Desktop

A complete Electronics Learning Management System using JavaFX and MySQL Database with TCP Chat Application and Admin, Faculties & Students being the stakeholders.

Primary LanguageJava

LMS Desktop

A desktop application that lets the faculties, students and admin to interact with their privilege and responsibilities.

A video demonstration is available here.

Features

  • Admin, Faculty & Student Login
  • Admin can add, edit, delete faculties and students
  • Faculty can add, edit, delete courses and students
  • Student can view courses and enroll in courses
  • Faculty can add tasks and students can submit tasks
  • Faculty can add grades and students can view grades
  • Faculty & Student can view their profile
  • Students can chat with multiple students, but the faculty needs to approve the chat request for group chat
  • Students get notifications when a new task is arrived in the LMS
  • Everyone gets secured personal storage
  • Has nice calculator application in it that can be detached and use separately as well.

Installation

Note

For Server, ChatServer.java. For Client, ChatClient.java.

VM option - --module-path "C:\Program Files\Java\javafx-sdk-17.0.6\lib" --add-modules javafx.controls,javafx.fxml

Or, use Allow Multiple Instances in VS Code like below. For it, run ChatClient.java. Go to Run > Edit Configurations... >

allow multiple instance

  • Clone the repository git clone https://github.com/FahimFBA/LMS_Desktop.git
  • Open it in VS Code or IntelliJ IDEA. Recommending the IntelliJ IDEA.
  • Install all libraries from lib folder.
  • Import the database sql from src/resources/database/student_signup.sql to any client. I prefer MySQL Workbench. Alter its password to 1234 or root.
  • Run src/main/java/com/lms/lmsdesktop/MainApplication.java to launch the application.
  • Have fun!

Technologies

  • Java
  • JavaFX
  • A little bit of CSS
  • MySQL Database

Screenshots

  • Main LandingPage/Homepage

main landing page

  • Student Portal's LandingPage/Homepage

student portal homepage

  • Faculty Portal's LandingPage/Homepage

faculty portal homepage

  • Admin Portal's LandingPage/Homepage

admin portal homepage

  • Wrong Credentials (separate warning window)

wrong credentials

  • Faculty LMS (During hidden sidebar)

faculty lms during hidden sidebar

  • Faculty LMS (During enabled sidebar)

faculty lms during enabled sidebar

  • Faculty Course View

faculty course view

  • Faculty Course Content Update

update course content 1

update course content 2

  • Faculty Course Content Add (I purposely added some gibberish content here. Don't worry! In the next step, I will delete them, and I will also show you whether the delete content feature is working or not!)
addcoursecontent.mp4
  • Faculty Course Content Delete
deletecoursecontent.mp4
  • Faculty Slider
facultyslider.mp4
  • A nice standalone calculator integrated to LMS Desktop
calculator.mp4
  • Chat System (The teacher must need to start the server so that the students can chat among them. Teacher can see all the chat so that they are not cheating during the exams! The teacher can generate the event log as .xlsx file.) - TCP based Chat System has been applied here!
chatsystem.mp4

The .xlsx file generated in the above video is right here.

  • Student Signup

studentsignup

  • Student Signup Successful Window

This window gets displayed if the user's new account gets created successfully.

signupsuccessful.mp4
  • Student Signup Fail Window

This window gets displayed if the user do something wrong during the creation of the account (i.e, The password does not match in the Retype Password section, etc.)

student signup failed

  • Student Course View
studentcourseview.mp4
  • Admin Handles Students
adminstudenthandle.mp4
  • Admin Handles Faculties
adminhandlesfaculty.mp4

Team Members