mubeen-studentmanagement-project
v1.0.1
Published
This project is a console-based Student Management System implemented in TypeScript using Object-Oriented Programming (OOP) concepts. The system allows you to manage students, enroll them in courses, view balances, pay tuition fees, and show detailed stud
Downloads
8
Maintainers
Keywords
Readme
Student Management System
This project is a console-based Student Management System implemented in TypeScript using Object-Oriented Programming (OOP) concepts. The system allows you to manage students, enroll them in courses, view balances, pay tuition fees, and show detailed student status.
Project Structure
The project consists of two main classes:
1. Student Class
Properties:
studentID
: Unique 5-digit student ID.name
: Student's name.courses
: Array of courses enrolled.balance
: Current balance.
Methods:
enrollCourse(course: string): void
: Enroll the student in a course.viewBalance(): void
: View the student's balance.payTuition(amount: number): void
: Pay tuition fees.showStatus(): void
: Display detailed student information.
2. StudentManagementSystem Class
Properties:
students
: Array of students in the system.
Methods:
addStudent(): Promise<void>
: Add a new student to the system.enrollStudentInCourse(): Promise<void>
: Enroll a student in a course.viewStudentBalance(): Promise<void>
: View a student's balance.payStudentTuition(): Promise<void>
: Pay tuition fees for a student.showStudentStatus(): Promise<void>
: Display detailed status for a student.
Features
- 🎓 Student Management: Add and manage students in the system.
- 🆔 Unique Student IDs: Automatically generate unique 5-digit student IDs.
- 📚 Enrollment in Courses: Enroll students in various courses.
- 💰 Balance Tracking: View and manage student balances.
- 💸 Tuition Payment: Pay tuition fees to update the balance.
- 📊 Detailed Student Status: Display comprehensive student information.
- ➕ Interactive CLI Interface: Use Inquirer for a user-friendly command-line interface.
- 🔄 Real-Time Interaction: Dynamically interact with the system through prompts.
- 🔄 Multiple Actions: Perform actions like adding students, enrolling in courses, viewing balances, paying tuition, and showing student status.
- 🔄 Error Handling: Notify users if a student is not found during actions.
- 📈 Maintainable Codebase: Implement an object-oriented design for clean and organized code.
Dependencies
AdventureGame relies on the following dependencies:
- inquirer: A powerful library for handling interactive command-line prompts.
How to Use
- Add Students: Choose "Add Student" to add new students to the system. Enter the student's name when prompted.
- Enroll Students in Courses: Select "Enroll Student in Course" to enroll a student in a course. Provide the student ID and course name as prompted.
- View Student Balance: Opt for "View Student Balance" to check a student's balance. Input the student ID when prompted.
- Pay Student Tuition: Choose "Pay Student Tuition" to pay tuition fees for a student. Enter the student ID and the amount to pay when prompted.
- Show Student Status: Select "Show Student Status" to display detailed information about a student. Provide the student ID when prompted.
- Exit the System: To exit the Student Management System, choose "Exit" from the list of actions.
Installation & Usage
- Clone the repository:
git clone https://github.com/mubeendev3/typescript-projects.git
- Change into the project directory:
cd 12-StudentManagementSystemProject
- Install dependencies:
npm install
- Compile the Adventure Game CLI into .js by using this command :
tsc
- Run the game.js file using:
node index.js
Example
npx mubeen-studentmanagement-project
Issues
If you encounter any issues or have suggestions, please report them on the GitHub repository.
Follow Me:
🌐 Connect with Mubeen on LinkedIn 🐙 Explore Mubeen's projects on GitHub 📸 Follow Mubeen's creative journey on Instagram 🐦 Stay updated with Mubeen on Twitter 🎨 Discover Mubeen's design portfolio on Behance