C++ Server

Open-source C++ projects categorized as Server

Top 23 C++ Server Projects

  • OpenRCT2

    An open source re-implementation of RollerCoaster Tycoon 2 🎢

    Project mention: Which of these should I click on? I'm not super computer savvy and trying to do this by myself. Also, any other advice before I get to the next steps? | reddit.com/r/openrct2 | 2023-01-28

    Ugh, this list is a mess - literally everything is listed twice, so there are 8 entries when there should only be 4. If you look at the github release, there are correctly only four windows downloads (excluding symbols): https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.4.3

  • Mumble

    Mumble is an open-source, low-latency, high quality voice chat software.

    Project mention: Difference between murmur and mumble-server? | reddit.com/r/mumble | 2023-02-04

    In an upstream discussion it was agreed that the use of "mumble-server" as the name should be suggested to package maintainers. See: https://github.com/mumble-voip/mumble/issues/4046

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

  • cuberite

    A lightweight, fast and extensible game server for Minecraft

    Project mention: Compile the Minecraft Server (Java Edition) to Native with GraalVM Native Image | news.ycombinator.com | 2022-09-02

    Shout out for Cuberite as an alternative Minecraft server project that desperately needs more volunteers


    "Cuberite is a Minecraft-compatible multiplayer game server that is written in C++ and designed to be efficient with memory and CPU"

    Cuberite has been demoed running on old ARM Android phones and hosting multiple players off it at once. Its performance absolutely annihilates the Java based 'vanilla' server

  • Boost.Beast

    HTTP and WebSocket built on Boost.Asio in C++11

    Project mention: Learning to build networking applications using C/C++ from scratch | reddit.com/r/cpp_questions | 2023-01-26
  • Pistache

    A high-performance REST toolkit written in C++

  • azerothcore-wotlk

    Complete Open Source and Modular solution for MMO

    Project mention: Which of these SQL query is correct to give 100% quest item drop rate? | reddit.com/r/wowservers | 2023-01-04

    OK, played a bit further and yes this is a sorely needed fix for grind, heh. I did searching and came across https://github.com/azerothcore/azerothcore-wotlk/issues/1105, I'll back up the database and give it a try.

  • userver

    The C++ Asynchronous Framework (beta)

    Project mention: Who is using C++ for web development? | reddit.com/r/cpp | 2022-10-04

    Yandex uses a lot for backend. Also released this framework

  • Sonar

    Write Clean C++ Code. Always.. Sonar helps you commit clean C++ code every time. With over 550 unique rules to find C++ bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

  • verge

    Official Verge Core Source Code Repository :muscle:

  • forgottenserver

    A free and open-source MMORPG server emulator written in C++

    Project mention: 'I cried all night': Millions of Chinese lose access to 'World of Warcraft' and other hit games | CNN Business | reddit.com/r/technews | 2023-01-25
  • Sapphire

    A Final Fantasy XIV 4.0+ Server Emulator written in C++

    Project mention: Debunking the hilarious crackpot theories on private server usage for advantage on Ultimate World Prog | reddit.com/r/ffxiv | 2022-04-29

    Check this out

  • DarkflameServer

    The main repository for the Darkflame Universe Server Emulator project.

    Project mention: YouTubes algorithm gave me a huge nostalgia kick! | reddit.com/r/legouniverse | 2023-01-17

    So…for anyone unaware I was part of a project reviving an OLD MMORPG game from LEGO called Lego Universe. My team and I created a online server for the game to run on and kept the server IP private as per LEGO’s agreement with the original team who recreated and restored the game client. They DID however allow the team to RELEASE the code for the server so other people could start their own servers & play with their own friends. Well one thing lead to another and these “mini” bubbles of friendgroups started to both find the source code for the server online at: https://github.com/DarkflameUniverse/DarkflameServer, and start their own servers / join other people’s servers.

  • QtSwissArmyKnife

    QSAK (Qt Swiss Army Knife) is a multi-functional, cross-platform debugging tool based on Qt.

  • construct

    This is The Construct (by matrix-construct)

  • eModbus

    Modbus library for RTU, ASCII and TCP protocols. Primarily developed on and for ESP32 MCUs.

    Project mention: How to lower CPU usage in a very tight loop without sleep? | reddit.com/r/cpp_questions | 2022-09-19

    A quick check have me this https://github.com/eModbus/eModbus

  • beryldb

    BerylDB is a fully modular data structure data manager that can be used to store data as key-value entries. The server allows channel subscription and is optimized to be used as a cache repository. Supported structures include lists, sets, multimaps, and keys.

  • Fulcrum

    A fast & nimble SPV Server for BCH, BTC, and LTC

    Project mention: What can you do with bitcoin core | reddit.com/r/Bitcoin | 2023-02-05

    Or you can run an electrum server on top of bitcoin core, which is what I do. I use Fulcrum, because it's really easy to install. Then you can point your Electrum wallet (Android or PC) or Sparrow (PC) or BlueWallet (iOS or Android) to your own electrum server.

  • telegram-qt

    Qt-based library for Telegram network

  • porla

    A high performance BitTorrent client for servers and seedboxes.

  • server

    A tiny, hackable BitTorrent client for servers and seedboxes. (by picotorrent)

    Project mention: Transmission 4.0.0 beta 1 is out | news.ycombinator.com | 2022-10-07

    Moved to GHCR it seems https://github.com/picotorrent/server/pkgs/container/server

  • AGirs

    A Girs infrared server for the Arduino

    Project mention: Smart A/C Project w/ Adafruit & IFTTT. My first Arduino project! | reddit.com/r/ArduinoProjects | 2022-03-15

    Check out https://github.com/bengtmartensson/AGirs

  • esp32-asyncwebserver-fileupload-example

    Examples of how to upload files to an ESP32 using Asyncwebserver, SPIFFS and an Upload progress bar.

  • ESPAsyncWebServer

    Async Web Server for ESP8266 and ESP32 (by Aircoookie)

    Project mention: Problem installing on Adafruit Feather ESP32-S3 | reddit.com/r/WLED | 2022-12-16

    ; PlatformIO Project Configuration File [platformio] # ------------------------------------------------------------------------------ # ENVIRONMENTS # ------------------------------------------------------------------------------ # Release / CI binaries default_envs = adafruit_feather_esp32s3 src_dir = ./wled00 data_dir = ./wled00/data build_cache_dir = ~/.buildcache extra_configs = platformio_override.ini [common] # ------------------------------------------------------------------------------ # PLATFORM: # !! DO NOT confuse platformio's ESP8266 development platform with Arduino core for ESP8266 # # arduino core 2.6.3 = platformIO 2.3.2 # arduino core 2.7.0 = platformIO 2.5.0 # ------------------------------------------------------------------------------ arduino_core_2_6_3 = [email protected] arduino_core_2_7_4 = [email protected] arduino_core_3_0_0 = [email protected] arduino_core_3_2_0 = [email protected] # Development platforms arduino_core_develop = https://github.com/platformio/platform-espressif8266#develop arduino_core_git = https://github.com/platformio/platform-espressif8266#feature/stage # Platform to use for ESP8266 platform_wled_default = ${common.arduino_core_3_2_0} # We use for all, includes PWM flicker fix and Wstring optimization platform_packages = tasmota/framework-arduinoespressif8266 @ 3.20704.7 platformio/toolchain-xtensa @ ~2.40802.200502 platformio/tool-esptool @ ~1.413.0 platformio/tool-esptoolpy @ ~1.30000.0 # ------------------------------------------------------------------------------ # FLAGS: DEBUG # # ------------------------------------------------------------------------------ debug_flags = -D DEBUG=1 -D WLED_DEBUG -DDEBUG_ESP_WIFI -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_HTTP_SERVER -DDEBUG_ESP_UPDATER -DDEBUG_ESP_OTA -DDEBUG_TLS_MEM #if needed (for memleaks etc) also add; -DDEBUG_ESP_OOM -include "umm_malloc/umm_malloc_cfg.h" #-DDEBUG_ESP_CORE is not working right now # ------------------------------------------------------------------------------ # FLAGS: ldscript (available ldscripts at https://github.com/esp8266/Arduino/tree/master/tools/sdk/ld) # ldscript_2m1m (2048 KB) = 1019 KB sketch, 4 KB eeprom, 1004 KB spiffs, 16 KB reserved # ldscript_4m1m (4096 KB) = 1019 KB sketch, 4 KB eeprom, 1002 KB spiffs, 16 KB reserved, 2048 KB empty/ota? # # Available lwIP variants (macros): # -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH = v1.4 Higher Bandwidth (default) # -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY = v2 Lower Memory # -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH = v2 Higher Bandwidth # -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH # # BearSSL performance: # When building with -DSECURE_CLIENT=SECURE_CLIENT_BEARSSL, please add `board_build.f_cpu = 160000000` to the environment configuration # # BearSSL ciphers: # When building on core >= 2.5, you can add the build flag -DBEARSSL_SSL_BASIC in order to build BearSSL with a limited set of ciphers: # TLS_RSA_WITH_AES_128_CBC_SHA256 / AES128-SHA256 # TLS_RSA_WITH_AES_256_CBC_SHA256 / AES256-SHA256 # TLS_RSA_WITH_AES_128_CBC_SHA / AES128-SHA # TLS_RSA_WITH_AES_256_CBC_SHA / AES256-SHA # This reduces the OTA size with ~45KB, so it's especially useful on low memory boards (512k/1m). # ------------------------------------------------------------------------------ build_flags = -DMQTT_MAX_PACKET_SIZE=1024 -DSECURE_CLIENT=SECURE_CLIENT_BEARSSL -DBEARSSL_SSL_BASIC -D CORE_DEBUG_LEVEL=0 -D NDEBUG #build_flags for the IRremoteESP8266 library (enabled decoders have to appear here) -D _IR_ENABLE_DEFAULT_=false -D DECODE_HASH=true -D DECODE_NEC=true -D DECODE_SONY=true -D DECODE_SAMSUNG=true -D DECODE_LG=true ; -Dregister= # remove warnings in C++17 due to use of deprecated register keyword by the FastLED library -DWLED_USE_MY_CONFIG ; -D USERMOD_SENSORSTOMQTT #For ADS1115 sensor uncomment following ; -D USERMOD_ADS1115 build_unflags = build_flags_esp8266 = ${common.build_flags} ${esp8266.build_flags} build_flags_esp32 = ${common.build_flags} ${esp32.build_flags} ldscript_1m128k = eagle.flash.1m128.ld ldscript_2m512k = eagle.flash.2m512.ld ldscript_2m1m = eagle.flash.2m1m.ld ldscript_4m1m = eagle.flash.4m1m.ld [scripts_defaults] extra_scripts = pre:pio-scripts/set_version.py post:pio-scripts/output_bins.py post:pio-scripts/strip-floats.py pre:pio-scripts/user_config_copy.py # ------------------------------------------------------------------------------ # COMMON SETTINGS: # ------------------------------------------------------------------------------ [env] framework = arduino board_build.flash_mode = dout monitor_speed = 115200 upload_speed = 921600 # ------------------------------------------------------------------------------ # LIBRARIES: required dependencies # Please note that we don't always use the latest version of a library. # # The following libraries have been included (and some of them changd) in the source: # [email protected], [email protected](changed), [email protected](changed), [email protected], [email protected] # ------------------------------------------------------------------------------ lib_compat_mode = strict lib_deps = fastled/FastLED @ 3.5.0 IRremoteESP8266 @ 2.8.2 https://github.com/Aircoookie/ESPAsyncWebServer.git @ ~2.0.7 extra_scripts = ${scripts_defaults.extra_scripts} [esp32] #platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.2.3/platform-espressif32- platform = [email protected] platform_packages = framework-arduinoespressif32 @ https://github.com/Aircoookie/arduino-esp32.git# build_flags = -g -DARDUINO_ARCH_ESP32 ;-DCONFIG_LITTLEFS_FOR_IDF_3_2 -D CONFIG_ASYNC_TCP_USE_WDT=0 #use LITTLEFS library by lorol in ESP32 core 1.x.x instead of built-in in 2.x.x -D LOROL_LITTLEFS default_partitions = tools/WLED_ESP32_4MB_1MB_FS.csv lib_deps = ${env.lib_deps} https://github.com/lorol/LITTLEFS.git makuna/NeoPixelBus @ 2.6.9 https://github.com/pbolduc/AsyncTCP.git @ 1.2.0 [esp32c3] build_flags = -g -DARDUINO_ARCH_ESP32 -DARDUINO_ARCH_ESP32C3 -DCONFIG_IDF_TARGET_ESP32C3 -D CONFIG_ASYNC_TCP_USE_WDT=0 -DCO lib_deps = ${env.lib_deps} makuna/NeoPixelBus @ 2.6.9 https://github.com/pbolduc/AsyncTCP.git @ 1.2.0 [esp32s3] ;; generic definitions for all ESP32-S3 boards build_flags = -g -DESP32 -DARDUINO_ARCH_ESP32 -DARDUINO_ARCH_ESP32S3 -DCONFIG_IDF_TARGET_ESP32S3 -D CONFIG_ASYNC_TCP_USE_WDT=0 -DCO lib_deps = ${env.lib_deps} ;; NeoPixelBus 2.7.1 is the first that has official support for ESP32-S3 makuna/NeoPixelBus @ ~2.7.1 https://github.com/pbolduc/AsyncTCP.git @ 1.2.0 # ------------------------------------------------------------------------------ # WLED BUILDS # ------------------------------------------------------------------------------ [env:esp32c3] platform = [email protected] framework = arduino board = esp32-c3-devkitm-1 board_build.partitions = tools/WLED_ESP32_4MB_1MB_FS.csv build_flags = ${common.build_flags} ${esp32c3.build_flags} #-D WLED_RELEASE_NAME=ESP32-C3 -D WLED_WATCHDOG_TIMEOUT=0 upload_speed = 460800 build_unflags = ${common.build_unflags} lib_deps = ${esp32c3.lib_deps} [env:adafruit_feather_esp32s3] ;; Adafruit ESP32-S3 Feather board, with 4MB FLASH and 2MB PSRAM (memory_type: qio_opi, qio_qspi, or opi_opi) board = adafruit_feather_esp32s3 platform = espressif32 @ ~5.2.0 board_build.f_cpu = 240000000L platform_packages = upload_speed = 921600 build_unflags = ${common.build_unflags} build_flags = ${common.build_flags} ${esp32s3.build_flags} -D CONFIG_LITTLEFS_FOR_IDF_3_2 -D WLED_WATCHDOG_TIMEOUT=0 -D ARDUINO_USB_MODE=1 -D ARDUINO_USB_MSC_ON_BOOT=0 ; -D ARDUINO_USB_CDC_ON_BOOT=0 ; -D WLED_RELEASE_NAME=ESP32-S3_PSRAM -D WLED_USE_PSRAM -DBOARD_HAS_PSRAM ; tells WLED that PSRAM shall be used ; -D CONFIG_LITTLEFS_SPIFFS_COMPAT=1 ; lib_deps = ${esp32s3.lib_deps} board_build.f_flash = 80000000L board_build.flash_mode = qio monitor_filters = esp32_exception_decoder

  • black-marlin

    A fast in-memory key-value store with a REST API interface for easy development and integration.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-02-05.

C++ Server related posts


What are some of the best open-source Server projects in C++? This list will help you:

Project Stars
1 OpenRCT2 11,376
2 Mumble 5,230
3 cuberite 4,493
4 Boost.Beast 3,654
5 Pistache 2,811
6 azerothcore-wotlk 2,729
7 userver 1,520
8 verge 1,384
9 forgottenserver 1,326
10 Sapphire 566
11 DarkflameServer 497
12 QtSwissArmyKnife 385
13 construct 283
14 eModbus 224
15 beryldb 201
16 Fulcrum 167
17 telegram-qt 141
18 porla 73
19 server 45
20 AGirs 44
21 esp32-asyncwebserver-fileupload-example 22
22 ESPAsyncWebServer 11
23 black-marlin 9
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives