How tsendjav/loan-origination-system works
This is a loan-origination system with a React client and Spring Boot API. The intended user journey is authentication, customer and document handling, then loan application submission and review, risk assessment, and decision/disbursement. The backend tree also includes user administration, notifications, reporting, and health endpoints. Some frontend screens and backend subsystems are present in the tree but were not sampled, so their internal wiring is not asserted; dashed links mark only the broad, unverified UI-to-API boundary.
Main entry points: App.tsx React application · LoanApplicationServiceImpl.java Loan workflow and risk · apiClient.ts API client · CustomerController.java Customer API
Components 20
Web client
- React application
frontend/src/App.tsx - Login page
frontend/src/pages/LoginPage.tsx - Customer screens
frontend/src/pages/CustomerPage.tsx - Loan screens
frontend/src/pages/LoanApplicationPage.tsx - API client
frontend/src/services/apiClient.ts
Identity and access
- Authentication API
backend/src/main/java/com/company/los/controller/AuthController.java - Authentication logic
backend/src/main/java/com/company/los/service/impl/AuthServiceImpl.java - User administration
backend/src/main/java/com/company/los/service/UserService.java
Loan origination
- Customer API
backend/src/main/java/com/company/los/controller/CustomerController.java - Customer services
backend/src/main/java/com/company/los/service/CustomerService.java - Customer records
backend/src/main/java/com/company/los/entity/Customer.java - Document handling
backend/src/main/java/com/company/los/service/DocumentService.java - Loan API
backend/src/main/java/com/company/los/controller/LoanApplicationController.java - Loan workflow and risk
backend/src/main/java/com/company/los/service/impl/LoanApplicationServiceImpl.java - Loan applications
backend/src/main/java/com/company/los/entity/LoanApplication.java - Loan repository
backend/src/main/java/com/company/los/repository/LoanApplicationRepository.java
Platform operations
- Health API
backend/src/main/java/com/company/los/controller/HealthController.java - Dashboard and reporting
backend/src/main/java/com/company/los/repository/ReportingRepository.java - H2 database
backend/src/main/java/com/company/los/config/DatabaseConfig.java
Other components
- Staff user
Connections 19
- Staff user → React application: uses
- React application → Login page: presents
- React application → Customer screens: presents
- React application → Loan screens: presents
- Login page → API client: submits requests
- Customer screens → API client: submits requests
- Loan screens → API client: submits requests
- Authentication API → Authentication logic: delegates to
backend/src/main/java/com/company/los/controller/AuthController.java - Authentication logic → User administration: uses user operations
- Customer API → Customer services: delegates to
backend/src/main/java/com/company/los/controller/CustomerController.java - Loan API → Loan workflow and risk: delegates to
backend/src/main/java/com/company/los/controller/LoanApplicationController.java - Loan workflow and risk → Loan repository: queries and saves
backend/src/main/java/com/company/los/service/impl/LoanApplicationServiceImpl.java - Loan workflow and risk → Document handling: uses document service
backend/src/main/java/com/company/los/service/impl/LoanApplicationServiceImpl.java - Loan workflow and risk → Customer services: reads customer data
- Customer API → Customer records: uses customer entity
backend/src/main/java/com/company/los/controller/CustomerController.java - Loan API → Loan applications: uses loan entity
backend/src/main/java/com/company/los/controller/LoanApplicationController.java - Loan repository → Loan applications: persists
backend/src/main/java/com/company/los/repository/LoanApplicationRepository.java - API client → Health API: checks health
frontend/src/services/apiClient.ts - H2 database → H2 database: stores application data