A1ST






1. Introduction



I developed a modern Online Banking System with a user-friendly interface using Angular for the frontend and Spring Boot for the backend. This system provides a secure and efficient way for users to manage their finances, track transactions, and view insightful statistics.



Online Banking System Screenshot Online Banking System Screenshot


2. Technical Details



The Online Banking System is built on a microservices architecture, with the frontend developed using Angular and the backend implemented with Spring Boot. JWT authentication is integrated using Spring Security to ensure secure access to the system. The system supports two roles: User and Admin, each with specific functionalities.


Key features include:

  • Dashboard for an overview of account balance and recent transactions.
  • Transaction tracking for detailed information on withdrawals, deposits, and transfers.
  • Secure user authentication with JWT tokens.
  • Role-based access control with distinct functionalities for users and admins.


3. Design and User Experience



The design of the Online Banking System emphasizes simplicity and user-friendliness. A clean and intuitive interface allows users to navigate through various features seamlessly. The dashboard provides graphical representations of financial statistics, enhancing the overall user experience.


Throughout the development process, I focused on creating a responsive and accessible design to ensure a positive user experience across different devices. User feedback was considered to refine the interface and enhance usability.



4. Learning Outcomes



Developing the Online Banking System provided valuable experience in full-stack development. I gained expertise in Angular for frontend development, Spring Boot for backend services, and integrating JWT authentication for enhanced security. Handling user roles and implementing role-based access control was a crucial learning outcome.



5. Conclusion



Creating the Online Banking System was a fulfilling experience, allowing me to apply theoretical knowledge to a real-world project. I look forward to further enhancing the system with additional features and continually improving my skills in software development.