This is our group project – a web application built with ASP.NET and Angular
A older version of this project can be found here: https://github.com/hgf700/Old_Event_App_Group_Project
The application is currently hosted on AWS:
- EC2 (Amazon Linux) instance serves as the web server.
- The application is fully Dockerized and container images are stored in Amazon ECR.
- The database was migrated from MSSQL Database to PostgreSQL, hosted on Amazon RDS (Relational Database Service).
- The Docker container is deployed and runs on the EC2 instance, exposing the web application to the public.
- CI/CD automation is handled using GitHub Actions.
The project will remain available until the AWS Free Tier expires: http://13.217.97.150/
- Authentication and authorization using JWT (JSON Web Tokens).
- Secure session management using JWT access tokens and refresh tokens.
- User registration and login with ASP.NET Identity and OAuth external providers.
- Integration with the Ticketmaster API to fetch event data.
- Pagination and event search functionality via form or query parameters.
- Integration with Stripe Payments for ticket purchasing.
- Generation and display of QR codes for purchased tickets directly in the application.
- Interactive event details view displayed in a modal subwindow.
- A QR code containing the event URL is generated using QRCoder.
- A PDF file with event details is generated using QuestPDF.
- A confirmation email with PDF attachment is sent via SMTP.
- An SMS notification containing the event URL is sent using Twilio.
- Logging system for diagnostics and error tracking.
- Database access and ORM handled using Entity Framework Core.
- API security with rate limiting.
- Structured logging using Serilog.
- Prometheus – metrics collection from backend services.
- Loki – centralized log aggregation.
- Grafana – dashboards for logs and metrics visualization.
- Angular
- Unit Tests
- ASP.NET Web API
- Entity Framework
- ASP.NET Identity
- JWT Authentication
- Unit Tests
- Serilog Logging
- AWS EC2 – application hosting
- AWS ECR – container registry
- AWS RDS – managed database
- Docker
- GitHub Actions – CI/CD pipelines
- Grafana + Loki – logging and visualization
- Prometheus – metrics monitoring
- Ticketmaster API
- Stripe Payments API
- Twilio SMS API
- SMTP Email Service API
- PDF Generation Service
- QR Code Generation Service
- Google OAuth
| Service | URL |
|---|---|
| Frontend | http://localhost:4200 |
| Backend | http://localhost:5000/swagger |
| Grafana | http://localhost:3000 |
| Prometheus | http://localhost:9090 |
| Loki | http://localhost:3100 |
- Improve application security
- Add unit and integration tests
- Add Kubernetes deployment
- Add distributed tracing (OpenTelemetry)