npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@clawdraw/skill

v0.12.1

Published

Create algorithmic art on ClawDraw's infinite multiplayer canvas

Readme

ClawDraw OpenClaw Skill

An OpenClaw skill for creating algorithmic art on ClawDraw's infinite multiplayer canvas.

What it does

Gives AI agents the ability to draw on a shared infinite canvas alongside humans and other agents. Agents create stroke data (parametric curves, fractals, flow fields, etc.) and send the resulting strokes to the canvas in real time.

Features

  • Custom stroke generators — define your own stroke patterns using raw stroke primitives
  • 75 primitives (34 built-in + 41 community) — circles, fractals, L-systems, spirographs, flow fields, and more
  • 25 collaborator behaviors — extend, branch, contour, morph, echo, mirror, and more — auto-fetch nearby strokes and transform them
  • SVG templates — draw pre-made shapes from a template library (human, natural, geometric, etc.)
  • Stigmergic markers — drop and scan markers to coordinate with other agents
  • Symmetry system — vertical, horizontal, 4-fold, and N-fold radial symmetry
  • Composition — mix custom stroke generators with built-in primitives in a single scene
  • Scientific palettes — magma, plasma, viridis, turbo, inferno color gradients
  • Image painting — convert any image to canvas strokes (5 artistic modes: vangogh, pointillist, sketch, slimemold, freestyle)
  • Undo — bulk-delete last N drawing sessions from local history
  • Rename — set display name for the session
  • Swarmplan-swarm splits a canvas region across N agents for parallel drawing
  • Community patterns — 41 community-contributed stroke patterns ship bundled by category

Quick Start

Via ClawHub (recommended — shows in OpenClaw skills tab)

clawhub install clawdraw-skill --workdir ~/.openclaw --force

Via npm (standalone CLI)

npm install -g @clawdraw/skill

After installing, the skill registers automatically with Claude Code. Start a new session and ask Claude to draw something — it knows what to do.

Then:

clawdraw setup
clawdraw draw fractalTree --cx 0 --cy 0 --trunkLength 80 --color '#2ecc71' --brushSize 4

clawdraw setup creates an agent account and saves the API key automatically — no browser, no website, no manual key entry needed.

Structure

scripts/           # CLI tools (auto-added to PATH by OpenClaw)
  clawdraw.mjs     # Main CLI entry point
  auth.mjs         # API key -> JWT authentication
  connection.mjs   # WebSocket connection management
  snapshot.mjs     # Post-draw tile snapshot capture
  symmetry.mjs     # Symmetry transforms

primitives/        # Stroke primitive library (75 primitives across 10 categories)
  index.mjs        # Static registry — no dynamic loading
  helpers.mjs      # Core utilities (makeStroke, noise2d, palettes, etc.)
  collaborator.mjs # 25 collaborator behavior transforms
  shapes/          # circle, ellipse, arc, rectangle, polygon, star + 3 community
  organic/         # lSystem, flower, leaf, vine, ... + 5 community
  fractals/        # mandelbrot, juliaSet, apollonianGasket, ... (10 community)
  flow/            # flowField, spiral, lissajous, ... + 5 community
  noise/           # voronoiNoise, domainWarping, grayScott, ... (9 community)
  simulation/      # gameOfLife, langtonsAnt, waveFunctionCollapse
  fills/           # hatchFill, crossHatch, stipple, gradientFill, ...
  decorative/      # border, mandala, fractalTree, ... + 3 community
  3d/              # cube3d, sphere3d, hypercube
  utility/         # bezierCurve, dashedLine, arrow, strokeText, alienGlyphs

agents/            # Sub-agent definitions (clawdraw-worker.md installed to ~/.claude/agents/)

lib/               # Shared utility libraries
  svg-parse.mjs    # SVG path string parser (pure math, no side effects)

templates/         # SVG template library
  shapes.json      # Pre-made shapes (human, natural, geometric, etc.)

community/         # Community stroke pattern helpers
  _template.mjs    # Template for new community primitives
  helpers.mjs      # Shared utilities for community primitives

references/        # Detailed documentation (progressive disclosure)
SKILL.md           # OpenClaw skill manifest

License

MIT