This repository contains the presentation file and compiling source code for the CppCon2018 talk.
Do you want to make a lot of money? You'll see some examples of free browser and server based WebSocket programs which have earned their respective individual authors tens of millions of dollars in no time at all. Perhaps after seeing this talk in person, you'll write the next massively successful WebSocket app!
The WebSocket protocol powers the interactive web by enabling two-way messaging between the browser and the web server. The Boost.Beast library implements this protocol on top of the industry standard Boost.Asio library which models the Networking Technical Specification proposed for the ISO C++ Standard.
This presentation introduces Networking TS concepts and algorithms, how to read their requirements, and how to use them in your programs. We will build from scratch a multi-user chat server in C++11 using Beast, and the corresponding browser-based chat client in HTML and JavaScript. No prior knowledge or understanding of Beast or Asio is required, the talk is suited for everyone.
To run this example in a Docker container, simply enter the following commands:
docker build -t cppcon2018-example .
docker run -d -p 8080:8080 cppcon2018-example
After that, you may observe the example at localhost:8080
.