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..
- Host: GitHub
- URL: https://github.com/klaby/chork
- Owner: klaby
- License: mit
- Created: 2021-02-05T20:24:04.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2023-01-07T23:14:29.000Z (over 3 years ago)
- Last Synced: 2026-04-22T01:12:02.726Z (21 days ago)
- Topics: minimalist-js-data, nodejs, serializer, typechecker, typeof
- Language: TypeScript
- Homepage:
- Size: 654 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Minimalist JS data type checking utility.
Built with ❤︎ by Hiukky
# 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.