Skip to content

A robust banking system built with Go and Gin, featuring account creation, balance tracking, and money transfers. The frontend is developed using Vue.js with TypeScript. Utilizes JWT for authentication, microservices, gRPC, Redis, PostgreSQL, Docker and Kubernetes. Deployed on AWS with EKS and RDS, and CI/CD managed with GitHub Actions and Jenkins.

License

Notifications You must be signed in to change notification settings

almoghindi/Simple-Bank

Repository files navigation

Banking System

Project Overview

This project is a comprehensive banking system built with Go and Gin. The application provides functionalities for managing various aspects of a banking system, including account creation and management, balance recording, and money transfers. It also incorporates authentication and authorization mechanisms using JWT.

Key Features

  • Account Management: Create and manage bank accounts.
  • Balance Recording: Record all balance changes to each of the accounts.
  • Money Transfer: Perform money transfers between two accounts.
  • Authentication and Authorization: Ensures secure access to the application using JWT tokens.

Technologies Used

  • Backend: Go, Gin, JWT, Microservices
  • Client: Vue.js, TypeScript
  • Communication: gRPC
  • Database: PostgreSQL
  • Caching: Redis
  • Containerization: Docker
  • Orchestration: Kubernetes
  • CI/CD: Jenkins, GitHub Actions
  • Cloud: Aws (EKS, RDS, Route 53)

Prerequisites

  • Go 1.16+
  • Docker and Docker Compose
  • PostgreSQL
  • Kubernetes (Minikube or any Kubernetes cluster)
  • Jenkins (optional for CI/CD pipeline)
  • GitHub account for GitHub Actions
  • Node.js and npm (for the frontend)

About

A robust banking system built with Go and Gin, featuring account creation, balance tracking, and money transfers. The frontend is developed using Vue.js with TypeScript. Utilizes JWT for authentication, microservices, gRPC, Redis, PostgreSQL, Docker and Kubernetes. Deployed on AWS with EKS and RDS, and CI/CD managed with GitHub Actions and Jenkins.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published