GrpcMessenger is a gRPC-based client-server messaging application in C++.
Before building and running GrpcMessenger, ensure you have the following tools and libraries installed:
- Conan: Dependency manager for C/C++ projects.
- CMake: Cross-platform build system.
- Visual Studio: Development environment with MSVC compiler. The project is set up to use the "Visual Studio 17 2022" generator for CMake (
cmake .. -G "Visual Studio 17 2022"
). Other CMake generators might also work, but they haven't been tested and require modifications to the build scripts.
GrpcMessenger utilizes the following libraries (via Conan):
- gRPC: A high-performance RPC framework, used in combination with Protocol Buffers.
- Protocol Buffers: A language-neutral, platform-neutral extensible mechanism for serializing structured data.
- Spdlog: A fast C++ logging library.
In addition to the libraries, GrpcMessenger also utilizes the following tools:
- Protocol Buffers Compiler: Used to generate code for message serialization and gRPC service communication.
- CMake: Used for configuring the build process and generating platform-specific build files.
To build and run GrpcMessenger, follow these steps:
- Install the required prerequisites listed above.
- Clone this repository to your local machine.
- Navigate to the project directory and then to the
scripts
directory. - Run the build script provided to download dependencies, configure the build, and compile the project.
- After successful compilation, you can find the executable files in the
build/{build_type}
directory. - Run the server executable and then the client executable.
Contributions are welcome! If you'd like to contribute to GrpcMessenger, please fork the repository, make your changes, and submit a pull request.