open-index/open-npm huggingface dataset:
npm package: @js-items/express
Description: Concrete implementation of js-items for express
Author: Mariusz Rajczakowski
Latest version: 1.0.19

# express

[![CircleCI](https://circleci.com/gh/js-items/express.svg?style=svg)](https://circleci.com/gh/js-items/express)
[![codecov](https://codecov.io/gh/js-items/express/branch/master/graph/badge.svg)](https://codecov.io/gh/js-items/express)
![GitHub tag (latest SemVer)](https://img.shields.io/github/tag/js-items/express.svg)
![jscpd](assets/jscpd-badge.svg)
[![Known Vulnerabilities](https://snyk.io/test/github/js-items/express/badge.svg?targetFile=package.json)](https://snyk.io/test/github/js-items/express?targetFile=package.json)

express.js implementation of js-items

There is a fantastic alternative to this project (and @js-items/express is based on it):
[js-entity-repos/express](https://github.com/js-entity-repos/express).

The main differences to the @js-entity-repos/express:

- different naming convention: using `item` instead of `entity`
- cursor based pagination operates using `before` and `after` instead of `cursor` and `direction`
- additional `totalCount` property on pagination object
- optional `enveloping` response (`GET /endpoint?envelope=true`) for clients not capable of working with headers and JSONP
- `granular transactions handlers` for each `request handler` - this could be used for i.e. `authentication` or `permissions` checks
- possibility to `override` each `request handler`
- ability to disable json body parser middleware if already present in the stack (`enableJsonBodyParser: false`)
- by default all responses are `pretty` which improves readability, you can disable that by query param (`/endpoint?pretty=false`)

## Installation:

`npm i @js-items/express --save`

Credits:

- [ryansmith94](https://github.com/ryansmith94)
- [best-practices-for-a-pragmatic-restful-api](https://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api)
npm package: @js-items/foundation
Description: Provides set of interfaces and tests for concrete implementations of js-items repositories
Author: Mariusz Rajczakowski
Latest version: 1.0.28

# foundation
[![CircleCI](https://circleci.com/gh/js-items/foundation.svg?style=svg)](https://circleci.com/gh/js-items/foundation)
[![codecov](https://codecov.io/gh/js-items/foundation/branch/master/graph/badge.svg)](https://codecov.io/gh/js-items/foundation)
![GitHub tag (latest SemVer)](https://img.shields.io/github/tag/js-items/foundation.svg)
![jscpd](assets/jscpd-badge.svg)
[![Known Vulnerabilities](https://snyk.io/test/github/js-items/foundation/badge.svg?targetFile=package.json)](https://snyk.io/test/github/js-items/foundation?targetFile=package.json)

Provides set of interfaces, utils and tests for concrete implementations of js-items repositories.

There is a fantastic alternative to this project (and @js-items is based on it): 
[js-entity-repos](https://github.com/js-entity-repos).

The main differences to the @js-entity-repos:
- different naming convention: using `item` instead of `entity`
- cursor based pagination operates using `before` and `after` instead of `cursor` and `direction`

## Installation
`npm i --save-dev @js-items/foundation`

Credits:
- [ryansmith94](https://github.com/ryansmith94)
npm package: @js-items/knex
Description: Concrete implementation of js-items for knex.js
Author: Mariusz Rajczakowski
Latest version: 1.0.25

# knex

[![CircleCI](https://circleci.com/gh/js-items/knex.svg?style=svg)](https://circleci.com/gh/js-items/knex)
[![codecov](https://codecov.io/gh/js-items/knex/branch/master/graph/badge.svg)](https://codecov.io/gh/js-items/knex)
![GitHub tag (latest SemVer)](https://img.shields.io/github/tag/js-items/knex.svg)
![jscpd](assets/jscpd-badge.svg)
[![Known Vulnerabilities](https://snyk.io/test/github/js-items/foundation/badge.svg?targetFile=package.json)](https://snyk.io/test/github/js-items/foundation?targetFile=package.json)

Knex.js implementation of js-items

There is a fantastic alternative to this project (and @js-items/knex is based on it): 
[js-entity-repos/knex](https://github.com/js-entity-repos/knex).

The main differences to the @js-entity-repos:
- different naming convention: using `item` instead of `entity`
- cursor based pagination operates using `before` and `after` instead of `cursor` and `direction`

## Installation:
`npm i @js-items/knex --save`

Credits:
- [ryansmith94](https://github.com/ryansmith94)
npm package: @js-items/ky
Description: Concrete implementation of js-items for ky
Author: Mariusz Rajczakowski
Latest version: 1.0.12

# ky

[![CircleCI](https://circleci.com/gh/js-items/ky.svg?style=svg)](https://circleci.com/gh/js-items/ky)
[![codecov](https://codecov.io/gh/js-items/ky/branch/master/graph/badge.svg)](https://codecov.io/gh/js-items/ky)
![GitHub tag (latest SemVer)](https://img.shields.io/github/tag/js-items/ky.svg)
![jscpd](assets/jscpd-badge.svg)

ky implementation of js-items

- cursor based pagination operates using `before` and `after` 
- optional `enveloping` response (envelope: boolean) for clients not capable of working with headers and JSONP
- possibility to `override` each `request handler`
- by default all methods request response to be `pretty` which improves readability, you can disable that by query param (pretty: boolean)

## Installation:

`npm i @js-items/ky --save`

Credits:

- [ryansmith94](https://github.com/ryansmith94)
- [best-practices-for-a-pragmatic-restful-api](https://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api)