App developed for Distributed Systems class, for selling and buying theater tickets.
Communication between client and server was achieved using the .NET implementation of the gRPC framework, an open-source RPC framework developed by Google.
Solution is comprised of three projects:
- ClientApp, client-side application developed in C#, using WPF and following the MVVM architecture
- Server, gRPC service, featuring all of the needed server-side logic for database interaction and client request processing
- GrpcLibrary, a shared library containing the database-equivalent class models, shared services and protocol buffer (protobuf) definitions
The app supports three types of users:
- Admin, for user and log management
- Manager, which includes the back-office for all theater-related management
- Client, regular user, with options to search for theaters, shows and sessions, buy tickets and add funds to a virtual account