Data structure to manage movies and users database for a streaming service (non-generic) using generic AVL trees implemented manually.
In maina.cpp, you can create a new "StreamingDatabase" to store movies, users, and user groups. *Spoiler - this is not actually a database, only an organized way to store and change data in your streaming company using AVL Trees and other DS.
Movies have genres, users can join and exit groups, and a user and a group can rate and watch movies. The implemented methods in the StreamingDatabase class can get you statistics about movie ratings and view numbers.
The challenging thing was implementing all methods in a linear or log(n) time!