a Java distributed application resembling Twitter allowing multiple clients to interact at the same time.
A generic user A can follow a user B, user A will recieve on his feed all the tweets posted by the user B in real-time
A generic user A can follow an hashtag, user A will recieve on his feed all the tweets posted by the all the users mentioning the hashtag in real-time
- The technological stack used is based on a RMI distributed architecture, using the Java library java.rmi.
- The application is implemented thourgh a Model-View-Controller design pattern.
- Additional abstraction is added with the Observer-Observed design pattern.
- The GUI is implemented using the library JavaFX, using FXML files as source code.
Requires JAVA and Maven, compile as follow
mvn compile
Open a bash terminal for the Server, and go inside target/classes
cd target/classes
java rmi.rmitter.Server
Similar for the Client, open as many as you want
cd target/classes
java rmi.rmitter.Client
* the projects follow the guidelines of the "Software Engineering project" course at Politecnico di Milano, [https://github.com/affo/ingsoft-project]