An open API service indexing awesome lists of open source software.

https://github.com/klaby/chork

🔬 Minimalistic JS data type checking and serialization utility..
https://github.com/klaby/chork

minimalist-js-data nodejs serializer typechecker typeof

Last synced: 18 days ago
JSON representation

🔬 Minimalistic JS data type checking and serialization utility..

Awesome Lists containing this project

README

          


chork logo

Minimalist JS data type checking utility.


Built with ❤︎ by Hiukky





GitHub stars


GitHub issues


GitHub forks



npm bundle size



NPM

# About

Chork is a minimal library for checking data types in javascript.

Typeof `typeof` works well, but only for variables of the primitive type and not for structures like Array, Date and others. Chork solves this by bringing the real type of past value.


# Installation

### Using NPM

```
npm i chork
```

### Using Yarn

```
yarn add chork
```


# Use

Currently, chork has two test functions which are `check` and `checkAll`.

- ### check

It receives only one argument of any kind.

```ts
import { check } from 'chork'

check(1) // 'number'
check('foo') // 'string'
check([1, 'foo']) // 'array'
check({ key: 1 }) // 'object'
check(new Date()) // 'date'
```

- ### checkAll

The `checkAll` function works in the same way as `check`, the only difference is that it returns an object with a `key` being its own value and a `value` being the result with the type of data tested.

```ts
import { check } from 'chork'

checkAll(1) // { '1': 'number' }
checkAll('foo') // { foo: 'string' }
checkAll([1, 'foo']) // { '1': 'number', foo: 'string' }
checkAll({ key: 1 }) // { key: 'number' }
checkAll(new Date()) // { 'Sat Feb 06 2021 12:35:41 GMT-0300 (Brasilia Standard Time)': 'date' }
```

### Available types

- **string**
- **number**
- **bigint**
- **boolean**
- **undefined**
- **symbol**
- **null**
- **object**
- **array**
- **map**
- **date**
- **function**


# Contributing

Chork is in an initial version without many features yet, but you can feel free to send your suggestion or open a PR.




buy me a coffee




GitHub license