A modern banking management system built with Python (Flask) and MySQL for the backend, and React with Redux and Material-UI for the frontend. This application allows users to manage bank accounts, perform deposits and withdrawals, transfer funds, and much more.
This application allows users to manage their bank accounts through a modern web-based interface. The backend is built with Flask and MySQL, and the frontend is developed using React, Redux, and Material-UI to ensure a modern, responsive, and user-friendly experience.
- Add New Account: Open a new bank account by providing required personal details like name, date of birth, checking, and savings balances.
- View All Accounts: View all existing accounts with detailed information.
- Search Account: Search for an account by account number and view account details.
- Deposit Money: Deposit money into checking or savings accounts.
- Withdraw Money: Withdraw money from checking or savings accounts.
- Transfer Money: Transfer money between accounts or to another user’s account.
- Savings to Checkings/Checkings to Savings: Transfer money between checking and savings accounts within the same user account.
- Delete Account: Close and delete a bank account.
- Responsive Frontend: A clean and modern user interface using Material-UI, with responsive design for various screen sizes.
- Python 3.x
- MySQL
- Flask
- Flask-CORS
- Node.js (v14 or higher recommended)
- React.js
- Redux
- Material-UI
-
Clone the repository:
git clone https://github.com/your-username/banking-management-system.git cd banking-management-system/backend
-
Create a Python virtual environment (optional but recommended):
python3 -m venv venv source venv/bin/activate # Linux/MacOS venv\Scripts\activate # Windows
-
Install required dependencies:
pip install -r requirements.txt
-
Set up your MySQL database:
- Create a MySQL database.
- Configure the MySQL username and password in your `Banking_init.py` or `Banking_proj.py` file.
- Run your MySQL setup scripts if available.
-
Run the Flask backend:
python Banking_proj.py
-
Navigate to the `frontend` directory:
cd ../frontend
-
Install the required dependencies:
npm install
-
Run the React app:
npm start
-
Your app should now be running at `http://localhost:3000\`.
- Add Account: Navigate to the "Add Account" section to create a new bank account by entering the required details.
- View Accounts: Go to the "View Accounts" section to see a table of all bank accounts.
- Search Account: Use the "Search Account" feature to find details of a specific account by entering the account number.
- Deposit/Withdraw: Once an account is selected, deposit or withdraw money by following the prompts.
- Transfer Money: Transfer funds from one account to another using the "Transfer Money" feature.
POST /add-account
: Adds a new account.GET /view-accounts
: Retrieves a list of all accounts.GET /search-account/<account_number>
: Retrieves account details for a given account number.