Welcome to iBank Application! This is a simple banking application developed using Java and Spring Boot, for managing your finances conveniently. With this application, you can perform various banking operations such as creating accounts, depositing money, withdrawing funds, transferring money between accounts, and checking your account balance. The application has been made with 3 microservice components: Accounts
, Loans
and Cards
.
Note that this project is a work in progress and is being actively developed and is still a work in progress.
- Account Management: Create, view, and manage your bank accounts easily.
- Deposit and Withdrawal: Deposit money into your accounts and withdraw funds whenever needed.
- Transfer Funds: Transfer money between your own accounts or to other users within the system.
- User Authentication: Secure login system to ensure only authorized users can access their accounts. (Not complete)
- Transaction History: Keep track of your transactions with a detailed transaction history. (Not complete)
- Security: Your data is securely stored and encrypted to ensure confidentiality. (Not complete)
- Programming Language: Java
- Database: MySQL
- Frameworks: Spring Boot, Hibernate
- Build Tool: Maven
- Containerization: Docker
- API Documentation: SpringDoc OpenAPI
- Orchestration: Docker Compose
- Configuration: Spring Cloud Config Server/Client
- Clone the Repository: Clone this repository to your local machine using
git clone
. - Database Configuration: Set up a MySQL database and configure the database connection details in the
application.properties
orapplication.yml
file. - Build the Project: Navigate to the project directory and build the project using Maven:
mvn clean install
. - Run the Application: Run the application using
docker-compose up -d
in the root directory of the project. This will start the microservices in a Docker container locally. (You need Docker installed) - Access the Endpoints: Access to endpoints will be available under
http://localhost:8080
for Accounts service,http://localhost:8090
for Loans service and finallyhttp://localhost:9000
for Cards service.
This project is licensed under the Apache License 2.0.