anarthal / servertech-chat

Chat app using Boost and C++
https://anarthal.github.io/servertech-chat/
Boost Software License 1.0
22 stars 2 forks source link
async aws beast boost cpp networking redis websocket

BoostServerTech Chat

This repository holds the code for a chat application written in C++.

Read the full docs here.

Build Docs Live server
Build Status Build Status Try it!

The BoostServerTech project

This is the first of the BoostServerTech projects, a collection of projects that showcase how C++ and Boost can be used for server-side code.

Architecture

The server is based on Boost.Beast, asynchronous (it uses stackful coroutines) and single-threaded. It requires C++17 to build. It uses Redis and MySQL for persistence.

The client is web-based and uses Next.js. It communicates with the server using websockets.

You can read more about the architecture in this section of the docs.

Local development

You can quickly run the chat application in localhost by using Docker Compose, by running in a terminal at the repo root:

docker compose up --build

Or you can learn about how to set up a traditional development environment here.

Going live in minutes

This project features a CI/CD pipeline that can deploy your code to your server in minutes. All you need is a Linux server with SSH enabled, or an AWS account to create one. You can find out more here.

Want to contribute?

Drop us a message in the cpplang Slack! Contributors are more than welcome!