Quick Credit is an online lending platform that provides short term soft loans to individuals. This helps solve problems of financial inclusion as a way to alleviate poverty and empower low income earners.
GitHub pages (gh-pages) of this project is accessed using this link Quick Credit.
Quick Credit API documentation.
- User (client) can sign up.
- User (client) can login.
- User (client) can request for only one loan at a time.
- User (client) can view loan repayment history, to keep track of his/her liability or responsibilities.
- Admin can mark a client as verified , after confirming his/her home and work address.
- Admin can view a specific loan application.
- Admin can approve or reject a client’s loan application.
- Admin can post loan repayment transaction in favour of a client.
- Admin can view all loan applications.
- Admin can view all current loans (not fully repaid).
- Admin can view all repaid loans.
- You need to have
git,NodeJSandnpminstalled on your local environment. - Clone the application with
git clonecommand. npm installto install all the dependencies in local environmentnpm updateto update the dependencies if new version available.
NodeJsRuntime environment that helps to run JavaScript not only in the browser even on the server.ExpressNodeJS framework used for making the back-end.JoiandMorganAPI request body error validation and HTTP Request logger respectively.body-parserParse incoming requests.swaggerOpen-source software framework that helps developers design, build, document, and consume RESTful Web services.
Starting application run the following npm scripts
npm startfor starting the server.
When you need to test the application and view test coverage run:
npm testfor running the tests, andnpm run coveragefor getting the coverage summary.
-
POST
/api/v2/auth/signupCreate user account. -
POST
/api/v2/auth/signinLogin a user. -
GET
/api/v2/usersGet all users. -
GET
/api/v2/users/<:user-id>Get a specific user. -
PATCH
/api/v2/users/<:user-email>/verifyMark a user as verified. -
GET
/api/v2/loans/<:loan-idGet a specific loan application. -
GET
/api/v2/loans?status=approved&repaid=falseGet all current loans that are not fully repaid. -
GET
/api/v2/loans?status=approved&repaid=trueGet all repaid loans. -
GET
/api/v2/loansGet all loan applications -
GET
/api/v2/loans/<:loan-id>/repaymentsView loan repayment history. -
POST
/api/v2/loansCreate a loan application. -
PATCH
/api/v2/loans/<:loan-id>Approve or reject a loan application. Specify the status in the request’s body. -
POST
/api/v2/loans/<:loan-id>/repaymentCreate a loan repayment record.