This repository is a comprehensive, monolith collection of three console-based applications built in Java. Each project demonstrates core Object-Oriented Programming (OOP), Clean Architecture, and robust logic for real-world scenarios.
A full-featured system for managing a library's book inventory, borrower lifecycles, and fine calculations.
- Key Features: Admin/Borrower roles, exponential fine growth, book inventory limits, and detailed reporting.
- Concepts: Inheritance, Static DataStore, exponential math logic.
- 🔗 View Project Details
A robust retail billing system with cart management and a smart loyalty rewards engine.
- Key Features: Wallet-based payments, itemized billing, loyalty points, and cashback rewards for high-value bills.
- Concepts: Snapshot patterns (for billing), Collections sorting, reward logic.
- 🔗 View Project Details
A rental platform for cars and bikes with security deposit checks and damage-based fine management.
- Key Features: Categorized vehicle rentals, KM-based service tracking, and damage severity fines.
- Concepts: Polymorphism (Car/Bike under Vehicle), date handling, service intervals.
- 🔗 View Project Details
Each project is self-contained. To run any of them, follow these general steps:
-
Navigate to the project folder:
cd [ProjectName] -
Compile the project:
javac -d out -sourcepath . Main.java -
Run the application:
java -cp out Main
Requirement: Java 8 or above.
Across all three projects, the following design choices were made:
- Monolith Clean Architecture: Separated into
auth,models,data,services,menus, andutils. - In-Memory Storage: Uses a static
DataStoreto manage state during runtime (resets on restart). - Role-Based Access Control (RBAC): Different menus and capabilities for Admins and Customers/Borrowers.
Developed with ❤️ by ha-re-ram