A C++ Publish/Subscriber Library
JackRussell is a C++ Publish/Subscriber Library. This project aims to fulfill a framework with easy-to-use mechanisms of Publish and Subscriber. By using JackRussell, users can:
- Create a Topics;
- Publish to Topic;
- Create Subscribers Classes;
- Register the Subscribers Classes to one or more Topics;
- Manage the message received by Subscribers
- Topic Manager Singleton
- Topic Class
- Subscriber Interface
To install and set up JackRussell, follow these steps:
- Clone the repository:
git clone https://github.com/ZigRazor/JackRussell.git
- Navigate to the project directory:
cd JackRussell
- Prepare CMake:
mkdir build
cd build
cmake ..
- Install Library
make install
You can use the Library in your project with CMake adding the following lines:
CPMAddPackage(
NAME JackRussell
GITHUB_REPOSITORY ZigRazor/JackRussell
GIT_TAG origin/main
)
or install it and the add to the include path {StandardIncludePath}/DogBreeds/JackRussell and to the linking_path {StandardLinkingPath}/DogBreeds/JackRussell.
For simple use you can see the Example For more detailed usage instructions, refer to the documentation.
We welcome contributions to JackRussell! To contribute, follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes and commit them:
git commit -m "Add your commit message"
- Push to the branch:
git push origin feature/your-feature-name
- Create a pull request.
Please read our contributing guidelines for more details.
This project is licensed under the MIT License. See the LICENSE file for details.
If you have any questions, suggestions, or feedback, feel free to reach out:
- Email: zigrazor@gmail.com
- GitHub Issues: issues
We would like to thank the following individuals for their support:
Photo by Natalie Kinnear on Unsplash