open-index/open-npm huggingface dataset:
npm package: @fms-cat/automaton
Description: Animation engine for creative coding
Author: FMS-Cat
Latest version: 4.2.0

# ![Automaton](https://i.imgur.com/c4XRwNS.png)

[![Latest NPM release](https://img.shields.io/npm/v/@fms-cat/automaton.svg)](https://www.npmjs.com/package/@fms-cat/automaton)

Animation engine for creative coding

Originally made for [Shift](https://GitHub.com/fms-cat/shift), my WebGL demo

You might want to check the variant w/ GUI instead, [automaton-with-gui](https://github.com/FMS-Cat/automaton/packages/automaton-with-gui)

## Examples

- [Most basic example](https://glitch.com/embed/#!/embed/fms-cat-automaton-basic?previewSize=40&path=main.js)
- [Event system](https://glitch.com/embed/#!/embed/fms-cat-automaton-events?previewSize=40&path=main.js)
- [Fxs](https://glitch.com/embed/#!/embed/fms-cat-automaton-fxs?previewSize=40&path=main.js)

## Install

### Include directly

- [`automaton.js`](https://fms-cat.github.io/automaton/automaton/dist/automaton.js)
- [`automaton.min.js`](https://fms-cat.github.io/automaton/automaton/dist/automaton.min.js)
- [`automaton.module.js`](https://fms-cat.github.io/automaton/automaton/dist/automaton.module.js)
- [`automaton.module.min.js`](https://fms-cat.github.io/automaton/automaton/dist/automaton.module.min.js)

`.min` builds are minified. otherwise it isn't minified and comes with source maps.  
`.module` builds are ESM. otherwise it's UMD.  
If you want to use the UMD one using iife, everything is exposed onto global under the name `AUTOMATON`.

Code like this:

```js
const { Automaton } = AUTOMATON;

const data = await ( await fetch( 'automaton.json' ) ).json();

const automaton = new Automaton( data );

// ...
```

### npm

[https://www.npmjs.com/package/@fms-cat/automaton](https://www.npmjs.com/package/@fms-cat/automaton)

```sh
# npm install @fms-cat/automaton
yarn add @fms-cat/automaton
```

then code like this:

```js
// const { Automaton } = require( '@fms-cat/automaton' );
import { Automaton } from '@fms-cat/automaton';

const data = await ( await fetch( 'automaton.json' ) ).json();

const automaton = new Automaton( data );

// ...
```

## Docs

[https://fms-cat.github.io/automaton/automaton/docs/](https://fms-cat.github.io/automaton/automaton/docs/)

## License

[MIT](./LICENSE)
npm package: @fms-cat/automaton-with-gui
Description: Animation engine for creative coding, with GUI!
Author: FMS-Cat
Latest version: 4.2.0

# automaton-with-gui

[![Latest NPM release](https://img.shields.io/npm/v/@fms-cat/automaton-with-gui.svg)](https://www.npmjs.com/package/@fms-cat/automaton-with-gui)

Animation engine for creative coding, with GUI!

It's an extended variant of the original [Automaton](https://github.com/FMS-Cat/automaton/packages/automaton) engine

Originally made for [Shift](https://GitHub.com/fms-cat/shift), my WebGL demo

## Playground!

![Playground](./readme-images/playground.gif)

Try our playground!
It comes with bunch of examples.

[https://fms-cat.github.io/automaton/automaton-with-gui](https://fms-cat.github.io/automaton/automaton-with-gui)

You might want to also check examples of original [Automaton](https://github.com/FMS-Cat/automaton/packages/automaton).

## Install

### Include directly

- [`automaton-with-gui.js`](https://fms-cat.github.io/automaton/automaton-with-gui/dist/automaton-with-gui.js)
- [`automaton-with-gui.min.js`](https://fms-cat.github.io/automaton/automaton-with-gui/dist/automaton-with-gui.min.js)
- [`automaton-with-gui.module.js`](https://fms-cat.github.io/automaton/automaton-with-gui/dist/automaton-with-gui.module.js)
- [`automaton-with-gui.module.min.js`](https://fms-cat.github.io/automaton/automaton-with-gui/dist/automaton-with-gui.module.min.js)

`.min` builds are minified. otherwise it isn't minified and comes with source maps.  
`.module` builds are ESM. otherwise it's UMD.  
If you want to use the UMD one using iife, everything is exposed onto global under the name `AUTOMATON_WITH_GUI`.

You might want to use `automaton.min.js` of [the core engine without GUI](https://github.com/FMS-Cat/automaton/packages/automaton) for production stage.

Code like this:

```js
const { AutomatonWithGUI } = AUTOMATON_WITH_GUI;

const data = await ( await fetch( 'automaton.json' ) ).json();

const automaton = new AutomatonWithGUI(
  data,
  {
    gui: yourDesiredMountpointDOM
  }
);

// ...
```

### npm

[https://www.npmjs.com/package/@fms-cat/automaton-with-gui](https://www.npmjs.com/package/@fms-cat/automaton-with-gui)

```sh
# npm install @fms-cat/automaton-with-gui
yarn add @fms-cat/automaton-with-gui
```

then code like this:

```js
// const { AutomatonWithGUI } = require( '@fms-cat/automaton-with-gui' );
import { AutomatonWithGUI } from '@fms-cat/automaton-with-gui';

const data = await ( await fetch( 'automaton.json' ) ).json();

const automaton = new AutomatonWithGUI(
  data, // it's okay to be `undefined`
  {
    gui: yourDesiredMountpointDOM
  }
);

// ...
```

## Docs

[https://fms-cat.github.io/automaton/automaton-with-gui/docs/](https://fms-cat.github.io/automaton/automaton-with-gui/docs/)

## License

[MIT](https://github.com/FMS-Cat/automaton/blob/master/LICENSE)
npm package: @fms-cat/chroma-shader
Description: yes chroma is my most favorite sound voltex
Author: FMS-Cat
Latest version: 0.1.0

# chroma-shader

![Imgur](https://i.imgur.com/6IKbBsa.gif)

Light up your Razer keyboard using your shader

Uses [Razer Chroma RESTful API](https://assets.razerzone.com/dev_portal/REST/html/index.html)

See [`example/example.js`](https://github.com/FMS-Cat/chroma-shader/blob/master/example/example.js) !