The Typesafe REST API Specification is a family of libraries used to enable seamless development of Backend and/or Frontend which communicate via HTTP protocol. The protocol specification is checked both at compile-time and run-time to verify that communication indeed adhers to the protocol. This all is done in such way that it does not make development tedious or boring, but instead robust and fun!
This particular repository contains libraries, which act as aggregators for a set of other libraries. The purpose is to make life of users easier, which will only need to write one
import * as tyras from "@ty-ras/backend-node-io-ts-openapi";
instead of many
import * as tyrasData from "@ty-ras/data";
import * as tyrasDataBE from "@ty-ras/data-backend";
...etc
io-ts
This repository contains the following aggregator libraries for io-ts
framework:
@ty-ras/backend-node-io-ts-openapi
for backends using Node HTTP(S) 1/2 server, io-ts
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-koa-io-ts-openapi
for backends using Koa HTTP(S) 1/2 server, io-ts
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-express-io-ts-openapi
for backends using Express HTTP(S) 1 server, io-ts
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-fastify-io-ts-openapi
for backends using Fastify HTTP(S) 1/2 server, io-ts
as data validation library, and OpenAPI as metadata format,@ty-ras/frontend-fetch-io-ts
for frontend clients using Fetch API to send HTTP requests and io-ts
as data validation library,@ty-ras/frontend-node-io-ts
for frontend clients using Node runtime to send HTTP requests and io-ts
as data validation library,@ty-ras/frontend-axios-io-ts
for frontend clients using Axios library to send HTTP requests and io-ts
as data validation library,@ty-ras-extras/backend-io-ts
for most typically used extra functionality (caching, configuration, resource pool, main invocation, SQL) in backend, and@ty-ras-extras/frontend-io-ts
for most typically used extra functionality (caching, configuration) in frontend.zod
This repository contains the following aggregator libraries for zod
framework:
@ty-ras/backend-node-zod-openapi
for backends using Node HTTP(S) 1/2 server, zod
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-koa-io-ts-openapi
for backends using Koa HTTP(S) 1/2 server, zod
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-express-io-ts-openapi
for backends using Express HTTP(S) 1 server, zod
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-fastify-io-ts-openapi
for backends using Fastify HTTP(S) 1/2 server, zod
as data validation library, and OpenAPI as metadata format,@ty-ras/frontend-fetch-zod
for frontend clients using Fetch API to send HTTP requests and zod
as data validation library,@ty-ras/frontend-node-zod
for frontend clients using Node runtime to send HTTP requests and zod
as data validation library,@ty-ras/frontend-axios-zod
for frontend clients using Axios library to send HTTP requests and zod
as data validation library,@ty-ras-extras/backend-zod
for most typically used extra functionality (caching, configuration, resource pool, main invocation, SQL) in backend, and@ty-ras-extras/frontend-zod
for most typically used extra functionality (caching, configuration) in frontend.runtypes
This repository contains the following aggregator libraries for runtypes
framework:
@ty-ras/backend-node-runtypes-openapi
for backends using Node HTTP(S) 1/2 server, runtypes
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-koa-io-ts-openapi
for backends using Koa HTTP(S) 1/2 server, runtype
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-express-io-ts-openapi
for backends using Express HTTP(S) 1 server, runtype
as data validation library, and OpenAPI as metadata format,@ty-ras/backend-fastify-io-ts-openapi
for backends using Fastify HTTP(S) 1/ server, runtype
as data validation library, and OpenAPI as metadata format,@ty-ras/frontend-fetch-runtypes
for frontend clients using Fetch API to send HTTP requests and runtypes
as data validation library,@ty-ras/frontend-node-runtypes
for frontend clients using Node runtime to send HTTP requests and runtypes
as data validation library,@ty-ras/frontend-axios-runtypes
for frontend clients using Axios library to send HTTP requests and runtypes
as data validation library,@ty-ras-extras/backend-runtypes
for most typically used extra functionality (caching, configuration, resource pool, main invocation, SQL) in backend, and@ty-ras-extras/frontend-runtypes
for most typically used extra functionality (caching, configuration) in frontend.