This project is a comprehensive banking system built using the Django framework. It encompasses various banking functionalities, including account management, loan processing, and transaction handling. The project is designed to be scalable and maintainable, making use of Django's robust features and extensibility.
- Account Management: Create, update, and manage user accounts with ease.
- Loan Processing: Apply for loans, process loan applications, and manage loan repayments.
- Transaction Handling: Record and track all transactions within the system.
- Docker Support: Easily deploy the application using Docker and Docker Compose.
banking-system/
├── accounts/ # Updated views for account management
├── banking_system/ # Main project settings and URLs
├── core/ # Core functionalities and utilities
├── loans/ # Loan-related views and functionalities
├── screenshots/ # Screenshots of the website.
├── scripts/ # Postgres sql scripts generated by Django.
├── static/ # Static files (CSS, JS, images)
├── templates/ # HTML templates for the frontend
├── transactions/ # Transaction-related views and functionalities
├── Dockerfile # Dockerfile for containerization
├── docker-compose.yml # Docker Compose configuration
├── manage.py # Django management script
├── readme.md # Project README file
├── relational_model.png # Relational model diagram
├── requirements.jpg # Image of requirements
├── requirements.txt # Python dependencies
- Python 3.x
- Docker (optional, for containerization)
- Git (for version control)
-
Clone the Repository
git clone https://github.com/ygsharma/banking-system.git cd banking-system
-
Create and Activate a Virtual Environment
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install the Requirements
pip install -r requirements.txt
-
Apply Migrations
python manage.py migrate
-
Run the Application
python manage.py runserver
-
Build the Docker Image
docker build -t banking-system .
-
Run the Docker Container
docker-compose up
- Access the application at
http://127.0.0.1:8000
after running the server. - Use the admin panel at
http://127.0.0.1:8000/admin
for administrative tasks (create a superuser usingpython manage.py createsuperuser
).
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.