AaryaPay is a proof-of-concept mobile payment application that implements an offline P2P transaction protocol developed as a part of a research project. It is built using Golang with its Gin framework and utilizes PostgreSQL and Redis as the DBMS. Traefik is employed as a reverse proxy, while Nginx serves static files.
- Seamless transitions between offline and online transactions
- Cryptographically secure payment and instant validation
- QR based payment with payload compaction
- Robust client side caching and syncronization mechanism
- Multi-stage CI/CD pipeline for automated testing and deployment
- Golang as the programming language
- PostgreSQL and Redis as the DBMS
- Traefik as the load balancer and reverse proxy
- Podman for containerization
- Nginx as the static file server
- Grafana for monitoring and visualization
- Loki for log aggregation
- Open-Telemetry with Tempo as tracing backend
- Git for version control
- Gitlab CI/CD for automated deployment
- NeoVim and VSCode as text editors