SyncSlate

A collaborative whiteboard powered by my C++ UDP networking library.

  • C++
  • SDL
  • ImGui
  • UDP
  • In early development

Work in progress

SyncSlate is at an early stage, so there isn't much to see yet. The repo shows how it's coming together.

View on GitHub

SyncSlate is a collaborative whiteboard built on top of my C++ networking library, UDPGameNetworking. It is a downloadable desktop application made with SDL and ImGui. I started it to put the library to work in something other than a game, and to practise building real-time, multi-user software.

How it will work

Live updates over UDP

Cursors and strokes that are still being drawn are sent to the other users over UDP, so everyone sees them in real time.

Finished strokes over TCP

Once a stroke is complete, its full data is sent to the server over TCP, so every user ends up with the same board.

Built on my library

Both kinds of message use UDPNetworking, including its TCP-style acknowledgement option.

Tech stack

  • C++
  • SDL
  • ImGui
  • UDPNetworking
  • CMake
  • vcpkg