squareicon
v2.0.0
Published
identicons with squares
Downloads
84
Maintainers
Readme
squareicon
JavaScript library for generating abstract images from unique identifiers.
Demo
https://mistic100.github.io/squareicon
Installation
$ npm install squareicon
Dependencies
- randomcolor - for color schemes other than
raw
- canvas - only when using NodeJS
Usage
In browser
<script src="randomcolor/randomColor.js"></script>
<script src="squareicon/browser.js"></script>
<img id="squareicon"></div>
<script>
squareicon({ id: 'mistic100' }, (err, data) => {
document.querySelector('img').src = data;
});
squareicon({ id: 'mistic100'})
.then(data => {
document.querySelector('img').src = data;
});
</script>
In NodeJS
const fs = require('fs');
const squareicon = require('squareicon');
squareicon({ id: 'mistic100' }, (err, buffer) => {
fs.writeFileSync('mistic100.png', buffer);
});
squareicon({ id: 'mistic100'})
.then(data => {
fs.writeFileSync('mistic100.png', buffer);
});
Command line
$ squareicon --id mistic100 mistic100.png
Options
| Option | Default | Description |
| ------ | ------- | ----------- |
| id | null |input identifier, can be empty for random value |
| hasher | sha11 | function used to transform the id into an hexadecimal string |
| colors | 2 | number of colors, can only be 1 or 2 |
| pixels | 8 | number of pixels, between 2 and 16 |
| size | 128 | desired size2, between pixels
and 2048 |
| padding | 0 | desired padding, between 0 and size / 3
|
| symmetry | none | type of symmetry, one of none
, vertical
, horizontal
, central
|
| scheme | standard | colors scheme3, one of raw
, standard
, light
, bright
, dark
|
| background | transparent | background color as a CSS string |
1 It uses the crypto module on NodeJS and the SubtleCrypto API on the browser.
2 The final size might be different in order to be pixel perfect
3
raw
will directly use the 12 or 24 first bytes of the hash to create colors. Other modes are delegated to randomcolor.
License
This library is available under the MIT license.