Skip to content

AP Project - A simple student management app with Java and Flutter (Spring 2024)

License

Notifications You must be signed in to change notification settings

ZahraAziziGit/student-management-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Management App

Overview

This repository contains a student management application developed as an Advanced Programming Project for Spring 2024. The project is implemented using Java for the backend and Flutter for the mobile application. It provides functionalities for managing students, teachers, courses, and assignments. You can watch this video to see how the app works.

Features

CLI Application

  • Admin Menu:
    • Add/Remove students, teachers, classes, assignments
    • Modify assignments, classes, student, and teacher data
  • Teacher Menu:
    • Add/Remove students to/from classes
    • Add/Remove assignments to/from classes
    • Modify assignments, and student data

Mobile Application

  • Welcome Page: Navigation to login and sign-up
  • Sign Up & Login: User authentication Section 1
  • User Info: Avatar upload, account deletion, password change
  • Home Screen: Summary of records and assignments Section 2
  • To-Do List: Task management
  • Classes: Class management Section 3
  • News: University news updates
  • Assignments: Assignment details Section 4

Backend

  • Server: Handles multiple client requests using Socket connections and multithreading.

Technologies

Installation

Prerequisites

  • Java Development Kit (JDK)
  • Flutter SDK

Steps

  1. Clone the repository:
    git clone https://github.com/ZahraAziziGit/student-management-app.git
  2. Navigate to the project directory:
    cd student-management-app
  3. Follow specific setup instructions for the backend and frontend as per the documentation.

Usage

Running the CLI

  1. Compile and run the Main
    cd src
    
    javac Main.java
    
    java Main.class

Running the Backend

  1. Compile and run the Java server.
    cd src/Server
    
    javac Server.java
    
    java Server.class

Running the Mobile App

  1. Open the Flutter project in an IDE (e.g., Android Studio).
  2. Run the app on an emulator or a physical device.

Contributing

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b <feature-branch>
  3. Make your changes and commit them:
    git commit -m "Description of the feature"
  4. Push to the branch:
    git push origin <feature-branch>
  5. Open a pull request.

TODO List

⬜ Uploading files for assignments

⬜ Adding a student to a course via the app

⬜ Sorting the assignments based on closer deadlines

⬜ Adding a dark theme

License

This project is licensed under the MIT License.

Contact

Thank you for checking out the Student Management App project! If you have any questions or feedback, feel free to reach out.

Telegram

E-mail: azizi.zahra.tehran@gmail.com

About

AP Project - A simple student management app with Java and Flutter (Spring 2024)

Topics

Resources

License

Stars

Watchers

Forks

Languages