/CXXMicroService

A C++ Library that give microservice framework ( Server / Client ) upon 0mq framework

Primary LanguageC++GNU General Public License v3.0GPL-3.0

CXXMicroService

A C++ Library that give microservice framework ( Server / Client )

codecov CodeFactor

GitHub license GitHub release

LGTM Alerts LGTM Grade

Generic badge Generic badge Generic badge

Generic badge Generic badge

Introduction

CXXMicroService is a C++ library, that manages MicroServices, upon different Framework ( actually only 0mq is implemented).

We are Looking for...

We are looking for:

  • Site Developer for the development of the CXXMicroService site ( for the moment on GitHub Page );
  • Developers and Committers, also at first experience, we will guide you step by step to the open-source world!

If you are interested, please contact us at zigrazor@gmail.com or contribute to this project. We are waiting for you!

Roadmap

Completed Description Date of Completition
✔️ First Commit May 2, 2022
✔️ Introduce the basic Framework May 24, 2022
📝 Introduction of more complete Examples TBD
📝 Introduction of Orchestrator TBD
📝 Introduction of Unit Test Framework TBD
✔️ Introduction of basic CI/CD Jun 6, 2022
📝 Advanced CI/CD TBD
📝 First Beta Release 0.0.1 TBD
📝 Introduce HTTP interface TBD
📝 Beta Release 0.0.2 TBD
📝 Basic Logger Enhancement TBD
📝 Beta Release 0.0.3 TBD
📝 Packaging on different Operating System TBD
📝 Beta Release 0.0.4 TBD
📝 Freeze of code for First Release TBD
📝 First Stable Release 1.0.0 TBD
📝 Multi-Threading Services TBD
📝 Beta Release 1.0.1 TBD
📝 Thread-Pool for services requests TBD
📝 Release 1.1.0 TBD
📝 Code Standard Review TBD
📝 Beta Release 1.1.1 TBD
📝 TBD TBD

Table of Contents

Building

Download the Sources

You can download the sources with git commands:

git clone https://github.com/ZigRazor/CXXMicroService.git
git submodule init
git submodule update

Building From Sources

You can build from source the library using CMake. The CMake will compile all the libraries needed to compile the CXXMicroService Library.

You can execute the following command from the project root directory:

mkdir build
cd build
cmake ..
make 

Requirements

The minimun C++ standard required is C++17 and a G++ compiler version greater than 7.3.0. Are also required OpenSSL library## Requerements to build LOG4CXX

To compile LOG4CXX are needed the following package:

sudo apt-get install build-essential libapr1-dev libaprutil1-dev gzip zip

How to use

The use of the library is very simple, just link the generated Dynamic Library to your executable

Example

Work in Progess

How to contribute

GitHub contributors If you want give your support you can create a pull request GitHub pull-requests or report an issue GitHub issues. If you want to change the code, or fix issue, or implement a new feature please read our CONTRIBUTING Guide

If you want to disscuss new feature or you have any question or suggestion about library please open a Discussion or simply chat on Join the chat at https://gitter.im/CXXMicroService-Community/community

Site

CXXMicroService Site

Contact

E-Mail : zigrazor@gmail.com

Join the chat at https://gitter.im/CXXMicroService-Community/community

GitHub Profile Profile views

ZigRazor's github stats

Support

To support me just add Star the project GitHub stars or follow me GitHub followers

To get updated watch the project GitHub watchers

References

We are referenced by:

Contributors

Thank you to all the people who have already contributed to CXXMicroService!

Contributors

Other Details

View the Estimated Value of the Project

Author


@ZigRazor