This project is a microservices-based web application that enables users to organize and participate in small, spontaneous, non-commercial community events in their local area. It was developed as part of a bachelor’s thesis at CTU in Prague.
To run this project locally, make sure you have the following tools installed:
- Docker
- Node.js & npm (for the Vue frontend)
- Java 17+ and Maven (for Spring Boot microservices)
Navigate to the infrastructure/docker directory and start the necessary infrastructure components (e.g., Kafka, MongoDB, ELK Stack):
cd infrastructure/docker
docker-compose up -dWait until all services are healthy (check with docker ps or use the Docker Desktop UI).
Each backend module is a standalone Spring Boot application. You can run them all using your IDE or with Maven:
# From the root of the project, run each service individually in separate terminals:
cd auth-server
mvn spring-boot:run
cd core-service
mvn spring-boot:run
cd chat-service
mvn spring-boot:run
cd map-service
mvn spring-boot:run
cd saga-orchestrator-service
mvn spring-boot:run
cd gateway
mvn spring-boot:runNavigate to the frontend directory and start the development server:
cd web
npm install
npm run dev| Service | URL / Port |
|---|---|
| Frontend (Vue) | http://localhost:5173 |
| API Gateway | http://localhost:8085 |
| Auth Server | http://localhost:8090 |
| Core Service | http://localhost:8081 |
| Chat Service | http://localhost:8082 |
| Map Service | http://localhost:8083 |
| Notification Service | http://localhost:8084 |
| Kafka Broker | localhost:9092 |
| Zookeeper | localhost:2181 |
| MongoDB | localhost:27017 |
| Elasticsearch | http://localhost:9200 |
| Kibana | http://localhost:5601 |
| Logstash | localhost:5000 |
| SonarQube | http://localhost:9000 |