Questions I would value the list's opinion on
- Is MCP appropriate inside a Boost library given how young the specification is? It is an optional layer and versioned by protocol revision, but I would like to hear concerns. - I plan to replace much of the type introspection with C++26 reflection once compilers ship it (parameter names, schemas without BOOST_DESCRIBE, annotations for descriptions and constraints), keeping the C++20 path. Is that a reasonable direction? - The name: "taar" is Persian for a strand or thread, as in a spider's web, and is also the name of a long-necked lute; a library of strands for the web seemed fitting. Is it acceptable as a Boost name?
Links
- Repository: https://github.com/rjahanbakhshi/boost.taar - Documentation: https://rjahanbakhshi.github.io/boost.taar/ - Examples: https://github.com/rjahanbakhshi/boost.taar/tree/master/example - Known gaps and roadmap: https://github.com/rjahanbakhshi/boost.taar/blob/master/ROADMAP.md
If there is interest, I would be grateful for feedback on the design and API, and I am looking for a review manager.
Hi Reza, Thanks for writing this up. Taar is close to what I've been working on, and I'd like to explore collaborating. I work on a family of libraries. Capy is the coroutine I/O foundation, Corosio is coroutine networking, Http is sans-I/O HTTP/1.1, and Beast2 builds servers on top of those. Boost conditionally accepted both Capy and Corosio. Http covers much of Taar's lower half, including path-pattern routing with automatic Allow handling, middleware, CORS, and static files with ETag, freshness and range support. It also applies gzip/deflate/brotli encoding on the fly. We don't have the layer you built on top. Taar appears to bind plain callables to request arguments and responses and expose them over JSON-RPC and MCP, as well as generate an OpenAPI document from the routes. I'd like to understand how much your handler binding and protocol layers depend on Beast, and whether they could sit on Http as well. If you're interested, come join us in #boost-corosio on the C++ Slack (cpplang.slack.com). The repositories are below. https://github.com/cppalliance/capy https://github.com/cppalliance/corosio https://github.com/cppalliance/http https://github.com/cppalliance/beast2 Steve