This library is a fully compliant websocket implementation! Autobahn complete , but with a few design goals:
- Cross-platform: Asio https://github.com/chriskohlhoff/asio/
 - Performance
 - Simple and easy to use
 - Latest standards: c++ 17
 - All functions are thread-safe and can be called from any thread at any time
 
- Ubuntu: sudo apt-get install libssl-dev zlib1g-dev -y
 - Mac: brew install openssl zlib
 - WIndows: vcpkg install openssl zlib
 
To get started check out the example here
https://github.com/smasherprog/websocket_lite/blob/master/Test/main.cpp
SL::WS_LITE::PortNumber port(3002);
auto listener =
  SL::WS_LITE::CreateContext(SL::WS_LITE::ThreadCount(1))
    ->NoTLS()
    ->CreateListener(port)
    ->onConnection([&](const std::shared_ptr<SL::WS_LITE::IWSocket> &socket, const std::unordered_map<std::string, std::string> &header) {
 
    })
    ->onMessage([&](const std::shared_ptr<SL::WS_LITE::IWSocket> &socket, const SL::WS_LITE::WSMessage &message) {
    })->listen();
    listener->set_ReadTimeout(std::chrono::seconds(100));
    listener->set_WriteTimeout(std::chrono::seconds(100));
    
auto clientctx =
  SL::WS_LITE::CreateContext(SL::WS_LITE::ThreadCount(1))
    ->NoTLS()
    ->CreateClient()
    ->onConnection([&](const std::shared_ptr<SL::WS_LITE::IWSocket> &socket, const std::unordered_map<std::string, std::string> &header) {
    })
    ->onDisconnection([&](const std::shared_ptr<SL::WS_LITE::IWSocket> &socket, unsigned short code, const std::string &msg) {
    })->connect("localhost", port);