Skip to content

Simple gRPC C++ server-client application, powered by Conan and CMake

License

Notifications You must be signed in to change notification settings

AnteDev00/gRPC-Messenger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GrpcMessenger

GrpcMessenger is a gRPC-based client-server messaging application in C++.

Prerequisites

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.

Libraries/Frameworks Used

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.

Tools Used

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.

Building and Running

To build and run GrpcMessenger, follow these steps:

  1. Install the required prerequisites listed above.
  2. Clone this repository to your local machine.
  3. Navigate to the project directory and then to the scripts directory.
  4. Run the build script provided to download dependencies, configure the build, and compile the project.
  5. After successful compilation, you can find the executable files in the build/{build_type} directory.
  6. Run the server executable and then the client executable.

Contributing

Contributions are welcome! If you'd like to contribute to GrpcMessenger, please fork the repository, make your changes, and submit a pull request.

License

  • This project, excluding the provided gRPC plugin, is licenced under the terms of the MIT License. For details, please refer to the License file.
  • The gRPC plugin is licensed under the Apache License Version 2.0. For comprehensive license details, please refer to the official repository at grpc/grpc.

About

Simple gRPC C++ server-client application, powered by Conan and CMake

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published