Coder Social home page Coder Social logo

grapevine's Introduction

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.

Introduction

Grapevine is a .NET class library focused on solving two problems:

  1. Easily embedding a REST/HTTP servers in your application
  2. Easily consume REST resources in your application

The focus is on simplicity, and 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.

Features

  • 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 Method 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

Limitations

  • If an application needs to scale and/or balance load across multiple servers, it would likely benefit from the features offered by an enterprise service bus (ESB). While Grapevine would not likely be a good fit for an ESB, it can certainly facilitate communication with them.

  • Grapevine is not intended to be a drop-in replacement for Microsoft IIS or Apache HTTP Server. Nor is it a full-featured application server (like Tomcat) or framework (like Spring). Instead, Grapevine aims to be embedded in your application, where using one of those would be impossible, or just plain overkill.

  • Grapevine does not do any script parsing (PHP, Perl, Python, Ruby, etc.) 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 automatically do that for you. You might want to do that during the installation of your application.

Support

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.

grapevine's People

Contributors

altima avatar beluk avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.