EventFlow is a self-hosted platform for managing and selling tickets to events. This backend service is built with Go and provides a REST API for event management, ticket sales, and payment processing. The platform integrates with Yookassa for handling payments and supports sending emails for event notifications. For observability, EventFlow includes monitoring and logging through Grafana, Prometheus, and Grafana Loki. The repository also includes tests for api and service layer.
https://eventflow.wdrxxx.online
If you want to test payments, use test card from here
- Events management;
- Yookassa payments integration;
- Email notifications;
- Observability;
- Tests.
-
Configure .env according to .env.example
-
Clone repo
git clone https://github.com/wDRxxx/eventflow-backend.git
-
Run database, mailhog and apply migrations
docker-compose up -d make migrations-up
-
Run observability services (optionally)
docker-compose -f=./observability/docker-compose.yaml up -d
-
Run backend
go run ./cmd/api/main.go
-
Run frontend (if you want)
To run tests use:
make test
If you want to see coverage, run:
make test-coverage