Projects
✕Leave Management System
Question 1 of 5
- This system is used to manage employee leave requests in a company.
- Employees can apply for leave and managers can approve or reject it using a command-line interface (CLI).
- An employee wants leave from 10 June to 15 June.
- Instead of sending messages or emails manually, they submit a leave request in the system.
- The manager checks the request and decides whether to approve or reject it.
- Employee registration and login using CLI menu.
- Employee can apply for leave by entering start date, end date, and reason.
- Employee can view their leave status (Pending / Approved / Rejected).
- Manager login using CLI.
- Manager can view all leave requests in table format in CLI
- Manager has option to export leave requests to CSV file.
- Manager has option to generate bar chart of leave status distribution.
- Manager can approve or reject leave using leave ID.
- Email notification is sent to employee after decision.
- All data is stored in SQLite database.
- Employee logs in through CLI menu.
- Employee applies for leave with dates and reason.
- Request is saved in database with status "Pending".
- Manager logs in and views all requests.
- Manager approves or rejects the request.
- Employee receives email notification.
- Simple window showing leave requests in a table format.
- Buttons to approve or reject requests.
- GUI is optional and only for students who want to explore further.
Project OverviewReal-World ExampleCore Features (CLI Mandatory)Example FlowOptional GUI (Bonus)Support Ticket Handler
Question 2 of 5
- This system is used to manage customer complaints or support requests.
- Users create tickets and support staff resolve them step by step using CLI.
- A user cannot log in to a website.
- They create a support ticket describing the problem.
- The support team checks and updates the status until the issue is solved.
- User can create a support ticket using CLI.
- Each ticket has title, description, and priority (Low / Medium / High).
- System assigns a unique ticket ID automatically.
- Support staff can login and view all tickets in CLI.
- Support staff can export ticket list to CSV file.
- Support staff can generate pie-chart for number of tickets per status
- Support staff can update ticket status (Open / In Progress / Resolved).
- User can check ticket status using ticket ID.
- Email notification is sent when status changes.
- All data is stored in SQLite database.
- User creates ticket: "Internet not working".
- Ticket is saved with status "Open".
- Support staff views the ticket list.
- Status is updated to "In Progress".
- Finally marked as "Resolved".
- User receives email updates at each stage.
- Dashboard showing all tickets in table form.
- Filters for status and priority.
- Buttons to update ticket status.
Project OverviewReal-World ExampleCore Features (CLI Mandatory)Example FlowOptional GUI (Bonus)Course Management
Question 3 of 5
- This system is used to manage students and course enrollment in schools or institutes.
- Students can register and enroll in available courses using CLI.
- A student wants to join a Python course.
- They select the course from the system and get enrolled.
- The system confirms the enrollment and stores the record.
- Student registration using CLI.
- Admin can add and manage courses using CLI.
- Students can view available courses.
- Students can enroll in a course.
- System prevents duplicate enrollment.
- Students can view their enrolled courses.
- Admin can export course enrollment list to CSV file.
- Admin can generate bar chart for number of students enrolled in each course.
- Email confirmation is sent after successful enrollment.
- All data is stored in SQLite database.
- Student registers in the system.
- Admin adds a course like "Python Basics".
- Student selects and enrolls in the course.
- System stores enrollment in database.
- Email confirmation is sent to student.
- Course list displayed in table format.
- Simple buttons for enrollment.
- GUI is optional and not required.
Project OverviewReal-World ExampleCore Features (CLI Mandatory)Example FlowOptional GUI (Bonus)Expense Tracker
Question 4 of 5
- This system helps users track their income and expenses.
- It provides monthly summaries to understand spending habits.
- A student records daily expenses like food and transport.
- At the end of the month, they check how much money they spent and saved.
- Add income and expense entries using CLI.
- Each entry has category, amount, and date.
- View total income, expenses, and balance.
- View monthly report in CLI.
- Export report to CSV file
- Generate bar chart of category wise expenditure.
- Email monthly report to user.
- All data is stored in SQLite database.
- User adds income: Pocket money ₹5000.
- User adds expense: Food ₹200.
- System calculates current balance.
- At month end, report is generated.
- Report is sent via email.
- Dashboard with charts (income vs expense).
- Graphical monthly summary view.
- GUI is optional enhancement.
Project OverviewReal-World ExampleCore Features (CLI Mandatory)Example FlowOptional GUI (Bonus)Inventory System
Question 5 of 5
- This system is used to manage product stock in a shop or small business.
- It helps track products, sales, and stock levels.
- A shop sells products like laptops and phones.
- When a product is sold, stock is reduced automatically.
- If stock becomes low, the system alerts the manager.
- Add new products using CLI.
- Update product quantity and price.
- Delete products from system.
- View all products in CLI table format.
- Track stock changes after sales.
- Low stock alert system using email.
- All data stored in SQLite database.
- Admin adds product: Laptop (10 units).
- Sale happens, stock reduces to 8.
- System checks stock level.
- If stock is low, email alert is sent.
- Admin updates stock if needed.
- Product dashboard with stock table.
- Search and filter products visually.
- Buttons for add/update/delete.
Project OverviewReal-World ExampleCore Features (CLI Mandatory)Example FlowOptional GUI (Bonus)
