/libpitaya-cluster

This repo contains a c++ lib with pitaya's cluster logic for creating backend pitaya servers in other programming languages

Primary LanguageHTMLMIT LicenseMIT

[WIP] pitaya-server

Overview

The original Pitaya project supports building pitaya servers in Go. This project aims to provide the same functionality, however aimed towards other programming languages. Currently, however, the supported languages are C++ and C#.

Note: This library is still in early stage, meaning the there might be several bugs. Also, the API is not stable.

About the components of the project

  • cpp-lib: the C++ core library.
  • pitaya-sharp: this is a solution with multiple C# projects. The main one is NPitaya, a library that wraps the native C++ library and provides a conveninent interface for writing pitaya servers in C#.
  • python-lib: this a python lib that wraps the shared library methods, you can include it in python projects to create python pitaya servers
  • go-server: thats an example server for using with the other components, you can run it with make run-go-server
  • unity-example: this is an unity example that uses NPitaya. For running it you must place (or link) out/libpitaya_cluster.dylib into Assets/Plugins folder

Installation

Language Project Location
C++ cpp-lib
C# pitaya-sharp

Releasing a new version in OpenUPM

  • Wait for the Github Actions Pipeline to run, to generate the platform specific "libpitaya_cpp" binaries.
  • Put the linux, windows, and macos (unity/fat) in the folder pitaya-sharp/NPitaya/Runtime/Plugins
  • Change the version in the file pitaya-sharp/NPitaya/package.json
  • Create a new tag in the format "vX.Y.Z" and push it to the repository

New lib version will be available in OpenUPM in a few minutes. Read documentation here for more information.