# install with npm
$ npm install illustrator.js
# install with yarn
$ yarn add illustrator.js
π No build tools required!
- Illustrator is fast, powered by @napi-rs/canvas π
- Illustrator provides beginner friendly API π€
- TypeScript supported πͺ
- Layers API ποΈ
- Color utilities API π¨
- Filters πΈ
- Tools such as eraser, shapes, text, etc. βοΈ
- Image manipulation (crop, brightness, blur, sharpness, format conversion, compression and much more..)
- Animation API (GIF) π
and more...
https://www.npmjs.com/package/illustrator.js
// import
import { Illustrator } from "illustrator.js";
import fs from "fs";
// create illustrator instance
const illustrator = new Illustrator(512, 512);
// colors array
const colors = ["#FFFFFF", "#FF0000", "#FFFF00", "#FF00FF", "#00FF00", "#0000FF"];
// for a color in colors array, create new layer and fill the layer with that color
for (const color of colors) {
// create new layer
const layer = illustrator.layers.createLayer({
name: color
});
// create background color tool
const bgTool = layer.tools.get("BackgroundColorTool");
// set fill color
bgTool.setFillColor(color);
// fill background
bgTool.fill(0, 0, illustrator.width, illustrator.height);
// render this tool to the layer
bgTool.render();
}
// get animation api
const animation = illustrator.animation;
// get all layers and transform to animation frame
const layers = illustrator.layers.getAllLayers().map((m) => ({
duration: 500,
frame: m.layer
}));
// animation config, set repeat to infinite (or 0) and add our layers to frames
animation.setRepeat(0).addFrames(layers);
// render the frames
const output = await animation.createAnimation();
// write the output file
output.pipe(fs.createWriteStream("./animation.gif"));
Check out ~/examples for more.
It may be hard to get simple things done via this library. Check out Canvacord for beginner-friendly utility APIs, built with Illustrator.js.
Brooooooklyn and the people behind napi-rs. Illustrator.js is here only because of their hard work behind the projects under napi-rs.
Join my official Discord server: https://discord.gg/CR8JxrxSwr