CIRCUS
Video rooms application built using Apache Kafka, Java, Spring Boot, Spring Security and PostgreSQL
About
CIRCUS is a Java and Spring Boot application for creating rooms with the purpose of watching YouTube videos together, similar to Watch2Gether
It supports user management and authentication via JWT, using Spring Security and a PostgreSQL relational database
Video rooms maintain socket connection and provide real-time chat and the ability for users to control the video player, through an Apache Kafka broker
This project is a case study and should not be used for any real purpose
Technologies
- Apache Kafka
- Apache Log4j 2
- Docker
- Flyway
- Java
- JSON Web Tokens
- PostgreSQL
- Project Lombok
- Spring Boot
- Spring Security
- Swagger
Requisites
- Docker version 20 or higher and docker-compose
- Ports 5432, 8080, 22181 and 29092
Installation
Clone the project, and run the following command in the root directory:
docker-compose up -d --build
The API will be running on localhost, port 8080
License
All the code on this repository is licensed under the GNU General Public License v3.0