# sides

> A small (2.29 KB) "safe" program interfaces for JavaScript. Yes, safe is in quotes.

Latest version **0.0.1** (published 2018-08-04) · MIT license · 0 weekly downloads

## Install

```sh
npm install sides
pnpm add sides
yarn add sides
bun add sides
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.1 |
| Published | 2018-08-04 |
| First published | 2018-08-04 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 9.8 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | Richard Torruellas |
| Maintainers | rtorr |

## Links

- npm: https://www.npmjs.com/package/sides
- Repository: https://github.com/rtorr/sides
- Homepage: https://github.com/rtorr/sides#readme
- Issues: https://github.com/rtorr/sides/issues
- npm.io page: https://npm.io/package/sides

## Dependencies (1)

- [mitt](https://npm.io/package/mitt.md) ^1.1.3

## Recent versions

- 0.0.1 (latest) — 2018-08-04

## README

# sides

A small (2.29 KB) "safe" program interfaces for JavaScript. Yes, safe is in quotes.

## Use

```bash
yarn add sides
```

```javascript
import { registerInterface, programs } from 'sides';
import PropTypes from 'prop-types';

let state = 0;
function updateState(n) {
  state = state += n ? n.number : 1;
  return state;
}

const unregister = registerInterface(
  {
    name: 'program1',
    program: updateState,
    types: { number: PropTypes.number.isRequired },
    description: 'this is a test program'
  },
  PropTypes
);
```

some other place to use this program

```javascript
import sides from 'sides';

sides('program1', { number: 2 });

// Throw a nice warning
sides('program1', { number: '1' });
// -> Warning: Failed program type: Invalid program type `number` of type `string` supplied to `program1`, expected `number`.
```

## Develop

```bash
git clone git@github.com:rtorr/sides.git
yarn install
yarn start
```

---
_Source: https://npm.io/package/sides · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
