In the doc and on github there is a clear example of how to connect as a client. Adding a server example could be useful.
Reasoning: The first time I tried beast I got scared off and went with a more works out of the box solution.
You mean like synchronous and asynchronous HTTP and WebSocket servers? These?
https://github.com/vinniefalco/Beast/blob/master/examples/http_sync_server.hpp
https://github.com/vinniefalco/Beast/blob/master/examples/http_async_server.hpp
https://github.com/vinniefalco/Beast/blob/master/examples/websocket_async_echo_server.hpp
https://github.com/vinniefalco/Beast/blob/master/examples/websocket_sync_echo_server.hpp
These examples have been in the project for over a year! Were you not able to find them?
These are really good examples. The difference with the example in the readme(frontpage of the repository @ usage) is that connecting as a client is a very minimal example and these don't feel like that. I do not want to nag, but the first thing I expected to see when reading the readme is such an example. It might seem like I'm stupid, but I just want to give feedback using my experience with the library.
Beast doesn't really aim to offer an "out of the box" server solution, it only aims to provide the low level building blocks of HTTP and WebSocket. There are so many ways to implement a server each with its own tradeoffs, that I couldn't possibly write it a single particular way that would satisfy everyone in a general purpose library. The examples intentionally show a synchronous client, since that results in the shortest code!
By out of the box I meant 'clear where to start'. I do not expect beast to provide a complete framework. However, I feel like the examples you provided look a bit like such a framework, while in the basics accepting a client is very simple with beast.
Oh! So maybe, you're saying - I could add a simple HTTP server and WebSocket server example which is synchronous and handles only one connection? That would fit into a slightly larger main than the current client examples.
Yes that is what I mean. I think that would help a lot of new users.
I would create an example myself, but to be honest I currently am myself one of those users who would benefit :)
@surgura Please consider participating in the Boost formal review for Beast, which starts on July 1st. All you need to do is sign up to the Boost developers mailing list (https://lists.boost.org/mailman/listinfo.cgi/boost) ahead of time and listen for the announcement from the review manager. Your review is vital to the health and success of the library - whether you have positive things to say, or negative things to say, feedback is the only way for Beast to get better!
example/server-framework is a comprehensive, working example of a server.
I do not expect beast to provide a complete framework.
Beast provides a complete framework now :)