Skip to content

kumar9060/BankApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏦 Bank Security Application

This is a Spring Boot-based backend banking application that provides secure RESTful APIs for managing user accounts, cards, investments, and admin functionalities. It integrates JWT-based authentication, role-based access control, and follows a modular structure separating concerns across controllers, services, repositories, DTOs, and security layers.


πŸ” Features

  • βœ… JWT Authentication & Authorization
  • πŸ‘€ Role-based Access (Admin & Customer)
  • πŸ’Ό Account Management
  • πŸ’³ Card Services
  • πŸ“ˆ Investment Tracking
  • 🧼 DTO & Layered Architecture
  • πŸ†• Bootstrap Default Admin User on Startup
  • πŸ” Get User by ID
    • Admin can view users of all roles except other admins
    • Customers can only view their own details

πŸ“ Project Structure

com.security.bank
β”œβ”€β”€ accounts
β”œβ”€β”€ admin
β”œβ”€β”€ cards
β”œβ”€β”€ config
β”œβ”€β”€ dto
β”œβ”€β”€ entity
β”œβ”€β”€ investments
β”œβ”€β”€ jwt
β”œβ”€β”€ repository
β”œβ”€β”€ Root
β”œβ”€β”€ security
β”œβ”€β”€ service
β”œβ”€β”€ user
└── BankApplication.java

πŸš€ Getting Started

Prerequisites

  • Java 17+
  • Maven
  • MySQL or H2
  • Postman for testing

Run Locally

git clone https://github.com/kumar9060/BankApp.git
cd BankApp
./mvnw spring-boot:run

API Testing

Use Postman or Swagger to test APIs (like /auth/login, /account/create, etc.)


πŸ™Œ Contribution

Pull requests are welcome. For major changes, please open an issue first.


πŸ“§ Contact

Made πŸ’» by Vikas Kumar

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages