This project is a Student Loan Platform built using ReactJS for the frontend and Spring Boot for the backend. It provides a system where borrowers can apply for loans, lenders can fund loans, and admins can manage loans and repayments. The system supports three user roles: Admin, Borrower, and Lender, each with specific functionalities.
- Manage and update user accounts (both borrowers and lenders).
- Manage loans and repayments:
- View loan applications.
- Track loans in progress.
- View repayment history for each loan.
- View details about borrowers and lenders.
- Submit loan applications.
- View loan status.
- Make loan repayments.
- Manage profile details.
- View pending loan agreements.
- Sign loan agreements.
- Provide funds to approved loans.
- Manage profile details.
- All roles have access to authentication functions:
- Sign-up, login, and profile management.
- React: Dynamic and interactive user interfaces.
- Vite: Fast and optimized development environment.
- Tailwind CSS: Utility-first CSS framework for rapid UI styling.
- Ant Design (AntD): UI components for building the admin and user dashboard.
- Axios: For HTTP requests and API integration.
- ApexCharts: Data visualization for loan and repayment history.
- React Router: For routing and navigation within the app.
- Spring Boot: For building REST APIs and handling the business logic.
- MySQL: Database for storing user data, loans, and repayment history.
- Manage borrowers and lenders.
- Manage loans and repayments.
- View loan applications and track the status.
- Submit loan applications.
- View loan status updates.
- Make repayments on active loans.
- Sign agreements for loans.
- Provide funds to approved loan requests.
- Node.js (version 18 or higher) for the frontend.
- Java 11 or higher for the backend.
- MySQL for the database.
-
Clone the repository:
git clone https://github.com/pheymin/ReactJS-SpringBoot-StudentLoanPlatform.git cd student-loan-backend -
Set up the database by creating a new MySQL database:
CREATE DATABASE student_loan;
-
Update the database credentials in
src/main/resources/application.properties:spring.datasource.url=jdbc:mysql://localhost:3306/student_loan spring.datasource.username=your-username spring.datasource.password=your-password
-
Build and run the backend:
./mvnw spring-boot:run
The Spring Boot application will start on http://localhost:8080.
-
Clone the frontend repository:
git clone https://github.com/pheymin/ReactJS-SpringBoot-StudentLoanPlatform.git cd student-loan-frontend -
Install the dependencies:
npm install
-
Start the development server:
npm run dev
The React application will start on http://localhost:5173.
demo.mp4
- After logging in as an admin, you can manage loans, users, and repayments via the admin dashboard.
- Navigate to the Loans section to view pending loan applications, active loans, and repayment history.
- Borrowers can submit a new loan application by navigating to the Apply for Loan section.
- Borrowers can view the status of their loan in the Loan Status section.
- Repayments can be made under the Repayment section.
- Lenders can view pending loan agreements and sign them in the Loan Agreements section.
- Lenders can provide funds for approved loans and track their contributions.
We welcome contributions from the community! If you'd like to contribute:
- Fork the repository.
- Create a feature branch (
git checkout -b feature/your-feature). - Commit your changes (
git commit -am 'Add new feature'). - Push to the branch (
git push origin feature/your-feature). - Open a pull request.
Pheymin - pheymin1223@gmail.com - https://github.com/pheymin


