Hi @socketio maintainers and community,
I’m reaching out because I noticed that socket.io-client-cpp hasn’t seen significant updates in a while (last major commit in 2023, with some fixes in 2025). As a long-time user of Socket.IO in C++, I understand how valuable a reliable, up-to-date client is for projects relying on real-time communication.
Given the lack of recent activity here, I wanted to share that I’ve been developing sioxx, a modern C++17 Socket.IO client built on Boost.Beast and nlohmann-json, with the following improvements over the original:
✅ Actively maintained (with a roadmap for future development)
✅ Full Socket.IO v4+ support
✅ WebSocket + HTTP long-polling fallback
✅ MessagePack parser support
✅ Custom parser support (users can plug in their own serialization strategies)
✅ Modern CMake (FetchContent for dependencies, find_package support, shared/static library options)
✅ Thread-safe API with explicit threading model
✅ Comprehensive testing (unit tests + end-to-end tests with a bundled Node.js server)
✅ Documentation (Doxygen + Sphinx, with architecture diagram)
Why sioxx?
I created sioxx to address gaps I encountered while using socket.io-client-cpp in production, particularly around:
- Lack of HTTP long-polling fallback (critical for environments where WebSocket is blocked)
- Binary data handling (MessagePack avoids the JSON placeholder/reconstruction complexity)
- Modern C++ practices (C++17, RAII...)
- Build system flexibility (easier integration into larger projects)
Migration Path
For those currently using socket.io-client-cpp, sioxx provides a similar API (inspired by the original) while adding new features. I’ve documented the differences and provided examples to ease the transition. Check out the:
No Hard Feelings
This isn’t meant to criticize socket.io-client-cpp: it’s been a fantastic project that served the community well for years. However, given its current state, I wanted to ensure users have a supported, forward-looking alternative.
If you’re maintaining a project that depends on socket.io-client-cpp, I’d love to hear your thoughts or help with migration. Feel free to:
- Open an issue in sioxx for questions or feature requests.
- Contribute to sioxx (PRs are welcome!).
- Share feedback on what you’d like to see in a modern C++ Socket.IO client.
Thanks for your time, and keep up the great work with Socket.IO!
Hi @socketio maintainers and community,
I’m reaching out because I noticed that socket.io-client-cpp hasn’t seen significant updates in a while (last major commit in 2023, with some fixes in 2025). As a long-time user of Socket.IO in C++, I understand how valuable a reliable, up-to-date client is for projects relying on real-time communication.
Given the lack of recent activity here, I wanted to share that I’ve been developing sioxx, a modern C++17 Socket.IO client built on Boost.Beast and nlohmann-json, with the following improvements over the original:
✅ Actively maintained (with a roadmap for future development)
✅ Full Socket.IO v4+ support
✅ WebSocket + HTTP long-polling fallback
✅ MessagePack parser support
✅ Custom parser support (users can plug in their own serialization strategies)
✅ Modern CMake (FetchContent for dependencies, find_package support, shared/static library options)
✅ Thread-safe API with explicit threading model
✅ Comprehensive testing (unit tests + end-to-end tests with a bundled Node.js server)
✅ Documentation (Doxygen + Sphinx, with architecture diagram)
Why sioxx?
I created sioxx to address gaps I encountered while using socket.io-client-cpp in production, particularly around:
Migration Path
For those currently using socket.io-client-cpp, sioxx provides a similar API (inspired by the original) while adding new features. I’ve documented the differences and provided examples to ease the transition. Check out the:
No Hard Feelings
This isn’t meant to criticize socket.io-client-cpp: it’s been a fantastic project that served the community well for years. However, given its current state, I wanted to ensure users have a supported, forward-looking alternative.
If you’re maintaining a project that depends on socket.io-client-cpp, I’d love to hear your thoughts or help with migration. Feel free to:
Thanks for your time, and keep up the great work with Socket.IO!