RealTime-Chat-And-Attendance-System

🧠 Real-Time Chat and Attendance System using Java

πŸ“˜ Overview

This project is a Real-Time Classroom Chat and Attendance System developed using Java Socket Programming and Swing GUI.
It enables seamless communication between teacher and students in a networked environment, while automatically marking attendance when students join the class.
The system simulates a modern classroom similar to online platforms like Zoom or Google Classroom β€” but built entirely in Java.


βš™οΈ Features


🧰 Tools & Technologies Used

Tool Purpose
Java (JDK 21) Core programming language
Java Swing GUI design framework
Socket Programming Enables real-time client-server communication
Multithreading Handles multiple users simultaneously
IntelliJ IDEA Integrated Development Environment
File I/O For attendance logging

🧩 Project Structure

πŸ“ RealTime-Chat-And-Attendance-System β”‚ β”œβ”€β”€ src β”‚ β”œβ”€β”€ TeacherServer.java # Server-side code (teacher dashboard) β”‚ β”œβ”€β”€ StudentClient.java # Client-side code (student interface) β”‚ β”œβ”€β”€ AttendanceManager.java # Attendance file management β”‚ β”œβ”€β”€ .idea # IntelliJ project files β”œβ”€β”€ .gitignore β”œβ”€β”€ Client.iml


πŸš€ How to Run

1️⃣ Run the Teacher (Server)

  1. Open IntelliJ IDEA.
  2. Run TeacherServer.java.
  3. Click Start Server.
  4. The teacher dashboard will open and wait for student connections.

2️⃣ Run the Student (Client)

  1. Open another instance of IntelliJ (or run on another machine).
  2. Run StudentClient.java.
  3. Enter Name and UID when prompted.
  4. The client connects automatically to the teacher’s server.

πŸ“Έ Output Screenshots

Function Screenshot
Student Join Dialog Join Dialog
Teacher-Student Chat Teacher Chat
Attendance View Attendance
IntelliJ IDE Code Setup Code Setup

🧩 Future Enhancements


🏁 Conclusion

This project demonstrates the implementation of real-time communication, attendance tracking, and GUI-based management using Java.
It’s a compact and practical system that merges core computer science concepts β€” networking, multithreading, and interface design β€” into one educational tool.


πŸ‘¨β€πŸ’» Developed by:

Gautam Kumar Singh
Department of Computer Science & Engineering
(Session: 2025)