A full-stack banking management system built with:
- ASP.NET Core Web API (.NET 10) for backend services
- SQL Server for data storage
- Angular for the frontend user interface
- JWT Authentication for secure access
- Swagger for API documentation
This project enables managing clients, processing deposits & withdrawals, viewing transaction histories, and securing access via login.
- JWT Authentication using
AuthController - Client Management (
ClientsController) - Transaction Management (
TransactionsController) - SQL Server integration via Stored Procedures
- Swagger / OpenAPI documentation
- CORS-enabled for Angular frontend
- Service-based architecture (
AuthService,ClientService,TransactionService)
- User Login using JWT
- Secure access to dashboard components
- Client creation, listing, and details view
- Transaction creation (Deposit / Withdraw)
- Transaction history and summaries
- Reusable UI components
- Environment configuration for backend URL
- Token storage & HTTP interceptors
- .NET SDK 10
- SQL Server (local, Docker, or remote)
- Tools such as SSMS / Azure Data Studio
- Node.js (for Angular frontend)
Update BankingAPI/appsettings.json connection string to match your SQL Server instance:
"ConnectionStrings": {
"DefaultConnection": "Server=localhost,1433;Database=BankingAppDB;User Id=sa;Password=YourStrong@Pass123;TrustServerCertificate=true;"
}The API depends on stored procedures:
sp_AuthenticateUsersp_AddClientsp_GetAllClientssp_GetClientByIdsp_RecordTransactionsp_GetAllTransactionssp_GetTransactionsByClientId
(See documentation or SQL scripts for full definitions.)
cd BankingAPI
dotnet restore
dotnet build
dotnet run- HTTP:
http://localhost:5021 - HTTPS:
https://localhost:7010
Swagger UI (development mode only):
https://localhost:5021/swagger
cd BankingClient
npm install
ng serve --openFrontend default URL:
http://localhost:4200
Create or update src/environments/environment.ts:
export const environment = {
production: false,
apiUrl: 'https://localhost:5021/api'
};Register it in app.module.ts providers.
POST /api/Auth/login– Authenticate user & return JWT.
GET /api/Clients– Get all clients.GET /api/Clients/{id}– Get client by Id.POST /api/Clients– Create new client.
GET /api/Transactions– Get all transactions.POST /api/Transactions– Create a transaction (Deposit/Withdraw).
MIT – free to use and modify.