0.2.0 • Published 9 months ago
caos-js v0.2.0
CaosJS
"A small piece of code for those who want to watch the world burn" - Author
A lightweight JavaScript library to add chaotic and dynamic rotation effects to HTML elements on your webpage.
- GitHub: https://github.com/vmunozre/caos-js
- License: MIT
- Version: 0.1.1
Table of Contents
Installation
You can install CaosJS using npm:
npm install caos-jsOr include it directly in your project via a <script> tag:
<script src="https://cdn.jsdelivr.net/npm/caos-js"></script>Usage
To use CaosJS, simply create an instance of the library and provide configuration options (optional):
const CaosJS = require('CaosJs');
const caos = new CaosJS({
selector: '.my-elements',
maxRotation: 5,
minRotation: -5,
allowFrequency: true,
frequency: 0.7,
});Options
The CaosJS constructor accepts the following configuration options:
| Option | Type | Default | Description |
|---|---|---|---|
selectors | string[] | [] | CSS selectors for elements to apply the effect. |
maxRotation | number | 2 | The maximum degrees rotation value. |
minRotation | number | -2 | The minimum degrees rotation value. |
allowFrequency | boolean | false | Whether to apply the effect based on a frequency chance. |
applyFrequencyToAllElements | boolean | false | If true, applies frequency to each element individually. |
frequency | number | 0.5 | The probability (0-1) of applying the effect when allowFrequency is true. |
delay | number | 0 | The delay before the effect starts in milliseconds. |
Examples
Basic Usage
const CaosJS = require('CaosJs');
const caos = new CaosJS({
selectors: ['.test', 'div'],
maxRotation: 5,
minRotation: -5,
allowFrequency: true,
frequency: 0.7,
});HTML example
<div class="chaotic">Element 1</div>
<span>Element 2</span>
<div id="test-id">Element 3</div>
<script src="https://cdn.jsdelivr.net/npm/caos-js"></script>
<script>
const caos = new CaosJS({
selectors: ['.chaotic', 'span', '#test-id'],
maxRotation: 10, // 10 degrees max rotation
minRotation: -10, // -10 degrees min rotation
allowFrequency: true,
frequency: 0.5, // 50% chance
delay: 1000, // 1 second delay
});
</script>License
Make by vmunozre
MIT License