The best solutions are the simplest to implement. Embedding a REST/HTTP server in your application should be simple. Consuming REST resources from inside your application should be simple. If what you've been using doesn't feel simple, try Grapevine. It doesn't get any simpler than this.
Important:
No additional features or enhancements are being made. Bug fixes will be considered on a case-by-case basis.
Grapevine is a .NET class library focused on solving two problems:
The focus is on simplicity, and while Grapevine is intended for use in applications for which being a REST or HTTP client or server is not the primary function or purpose of the application, it can just as easily be used to serve up production-ready website and web applications.
Grapevine has no dependency on IIS or System.Web
.
Grapevine can serve both static files and dynamic resources
Grapevine can both produce and consume REST services
Grapevine has minimal configuration requirements
Grapevine allows you to map specific methods to HTTP verbs and URL patterns
Grapevine supports using regular expressions
Grapevine streamlines connecting and communicating with REST servers using simple patterns and placeholders
Grapevine can listen on multiple ports, and scope REST resources to those ports
Grapevine does not do any script parsing (CGI scripts or HTML templating engines) by default - but feel free to fork this project and hack away! I'm pretty sure it could be done, I just haven't encountered a need for it (yet).
You will likely be required to open a port in your firewall for remote computers to be able to send requests to your application. Grapevine will not (yet) automatically do that for you, but it's on our roadmap.
If you find you are having problems and need help check out our support options.
"Grapes In Dark Blue Cloud" Icon courtesy of aha-soft.