Skip to content

A sample banking application to demonstrate full-stack development., Backend:- Spring Boot, Spring Security, MySQL , Frontend:- Thymeleaf, Bootstrap ,Features:- User registration, admin approval, account management (deposit/withdrawal), and transaction history.

Notifications You must be signed in to change notification settings

Gourav3308/SmartBank-Spring-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SmartBank: A Full-Stack Banking Application

Spring Boot Thymeleaf MySQL Bootstrap Java

Project Overview

SmartBank is a full-stack banking application built as a learning project to demonstrate core web development concepts. It provides a secure and role-based environment for users and administrators to manage basic banking operations.

This project showcases key functionalities of modern web applications, from secure user authentication to database management.


Features

  • User Registration & Approval: New users can register, but their accounts must be approved by an administrator before they can log in.
  • Role-Based Access Control: Separate dashboards are provided for standard users and administrators using Spring Security.
  • User Dashboard:
    • Securely deposit and withdraw funds.
    • View a complete transaction history for their account.
  • Admin Dashboard:
    • View and manage all registered users.
    • Approve new user registrations.
    • Monitor all banking transactions across the platform.
    • Update or delete user accounts.
  • Database Integration: All user details, account balances, and transaction records are persisted in a MySQL database.

Technologies Used

  • Backend:
    • Spring Boot: Framework for building the backend application.
    • Spring Security: For user authentication, authorization, and role-based access.
    • Spring Data JPA / Hibernate: For seamless database interaction and object-relational mapping.
    • Java: The core programming language.
  • Frontend:
    • Thymeleaf: Server-side template engine for dynamic HTML pages.
    • Bootstrap 5: For a responsive and modern user interface.
  • Database:
    • MySQL: The relational database to store application data.

Setup and Installation

Follow these steps to run the project on your local machine:

  1. Clone the Repository:

    git clone [https://github.com/your-username/SmartBank.git](https://github.com/your-username/SmartBank.git)

    (Replace your-username/SmartBank.git with your actual repository URL)

  2. Database Configuration:

    • Create a new MySQL database named smartbank.
    • Update the database credentials in src/main/resources/application.properties with your own details:
      spring.datasource.url=jdbc:mysql://localhost:3306/smartbank
      spring.datasource.username=root
      spring.datasource.password=your_password
      spring.jpa.hibernate.ddl-auto=update
  3. Run the Application:

    • Open the project in your IDE (like Spring Tool Suite - STS).
    • Run the SmartBankApplication.java file.
  4. Access the Application:

    • Open your web browser and navigate to http://localhost:8080.

Contributing

If you have suggestions or find any bugs, please open an issue or submit a pull request.

About

A sample banking application to demonstrate full-stack development., Backend:- Spring Boot, Spring Security, MySQL , Frontend:- Thymeleaf, Bootstrap ,Features:- User registration, admin approval, account management (deposit/withdrawal), and transaction history.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published