the requirement for pre-processing makes me a bit suspicious, it's going to be a pain to interact with other parts of the toolchain, so i would hope there's a very good reason for it. i would make this at the top of the README.md.<p>The same comments apply to a lesser extent to the C++14 requirement- does your framework really benefit from using C++14 features over say C++11 ? Again I would make this clear at the top of the README.
If the author has seen Facebook proxygen[1] (another C++ http framework), a comparison to it would be helpful.<p>At first glance, it looks like the Silicon dependency <i>microhttpd</i> is somewhat analogous to proxygen. Is the Silicon value-added proposition the extra layers on top such as auto gen of client-side code, etc?<p>[1] <a href="https://github.com/facebook/proxygen" rel="nofollow">https://github.com/facebook/proxygen</a>
I like the concepts behind this framework, even if the '@' symbol is debatable. I think, combined with something like CodeSynthesis' ODB ORM (which apparently supports migrations now), something like this could be used to create some really efficient, light weight web applications that give frameworks like node.js a run for their money.<p>I like the idea of running a light C++ application on a crappy $5/month VPS and squeezing out every last drop of performance, built on top of the idea that modern C++ developers can crank out solutions as fast as Ruby or Python developers. From interviewing and talking to people, I don't think the vast majority of developers really understand how far C++ has come in the last 15 years.<p>The real PITA with web frameworks is how they interact with the database. Now that C++ has some decent ORMs, an improved feature set, and some strong renewed interest, I think we can make C++ a "web language".
The @ definition is insane, something which would never fly in large scale projects. And who names a library function D? If the authors feels typing full meaningful function names is too much he should stay with Javascript. Good C++ is code which is readable by 3rd parties not just yourself.<p>This whole library smacks of #define BEGIN { #define END }
I really enjoy the C++ language but am incredibly rusty since I haven't had a job in a very long time that requires the knowledge of use of the language. I was actually thinking about writing my own web framework for fun and learning (a bonus if it became useful but I wasn't holding my breath) but now that I see this I'm going to play around with it and see if it doesn't want I wanted or if I'll still work on one.<p>Not a huge fan of the preprocessor usage but still very interesting and very cool!
I have to admit, I have no idea what the @ symbol does. Can anyone clarify?<p>It can't be a macro, so I assume it's a C++14 feature I'm not aware of.
This is so exciting! I wanna test it out right now and I have so many questions.<p>are there any more docs than the description on Github readme?<p>I know this sounds very n00b of me, but can I use this as an Api layer for raw data?<p>I'd love to see more middlewares built around it. I used the 'Tree frog framework' for a while, I felt my work flow was not too efficient due to different api layers.
the point of this kind of thing is that it can allow super fast performance for critical endpoints:<p>Suppose your app consumes a JSON api and it turns out that one or two endpoints constitute most of the server load.<p>Rewriting one or two endpoints using a lightweight, fast framework can be a great solution, so long as you are already being smart about caching and there aren't other bottlenecks in your architecture.