UNPKG

hudson-taylor

Version:

Hudson Taylor is a set of libraries for making awesome microservices

57 lines (34 loc) 2.12 kB
hudson-taylor ============= [![Build Status](https://travis-ci.org/hudson-taylor/hudson-taylor.svg?branch=master)](https://travis-ci.org/hudson-taylor/hudson-taylor) [![Coverage Status](https://img.shields.io/coveralls/hudson-taylor/hudson-taylor/master.svg)](https://coveralls.io/r/hudson-taylor/hudson-taylor?branch=master) [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/) Hudson Taylor is a set of libraries for building automatically documented, well validated services. HT is comprised of a server library for providing services with well documented and defined APIs with validation, and client libraries for calling services over a number of transports, HTTP, Websocket, TCP or in-process. All service methods (should) have a schema that lets you dictate the type of data you want, so you can be sure of what you're receiving. This has the added benefit of being able to automatically generate documentation for these methods. See [Changelog here](CHANGELOG.md) # Documentation Please visit [https://hudson-taylor.github.io](https://hudson-taylor.github.io) # Details ## Methods of communicating between services One of the nice things about HT is that you can connect to a service via methods without having to change your service code in any way. Hudson-Taylor is bundled with a couple of low-level transports such as: * TCP: uses long-lived TCP sockets for communication between client & server * HTTP: uses HTTP requests * Local: in-process transport that communicates internally between client & server Custom transports can be implemented easily, see /lib/transports/http.js for a documented example. ## Schemas Hudson-Taylors schema library is no longer bundled directly, see [ht-schema](https://github.com/hudson-taylor/ht-schema) instead. ## Utils ### Express Proxy Proxy express requests to a particular service method. See [ht-express](https://github.com/hudson-taylor/ht-express) ### ES7 Decorators Provides helpful decorators for working with HT See [ht-decorators](https://github.com/hudson-taylor/ht-decorators)