Create and share interactive visualizations, dashboards, and apps — with AI or by hand.
Write JavaScript, get a shareable URL. No server, no login, no build step. The entire app lives in the link.
const canvas = document.createElement("canvas");
canvas.width = root.getBoundingClientRect().width;
canvas.height = root.getBoundingClientRect().height;
root.appendChild(canvas);
const ctx = canvas.getContext("2d");
let particles = Array.from({length: 80}, () => ({
x: Math.random() * root.getBoundingClientRect().width, y: Math.random() * root.getBoundingClientRect().height,
vx: (Math.random() - 0.5) * 2, vy: (Math.random() - 0.5) * 2,
r: Math.random() * 3 + 1
}));
function frame() {
ctx.fillStyle = "rgba(0,0,0,0.08)";
ctx.fillRect(0, 0, root.getBoundingClientRect().width, root.getBoundingClientRect().height);
for (const p of particles) {
p.x += p.vx; p.y += p.vy;
if (p.x < 0 || p.x > root.getBoundingClientRect().width) p.vx *= -1;
if (p.y < 0 || p.y > root.getBoundingClientRect().height) p.vy *= -1;
ctx.beginPath();
ctx.arc(p.x, p.y, p.r, 0, Math.PI * 2);
ctx.fillStyle = `hsl(210, 40%, ${50 + p.r * 10}%)`;
ctx.fill();
}
requestAnimationFrame(frame);
}
frame();
CLI tools can generate JavaScript and create a short URL via
POST /api/shorten/json
with body {"js": "code", "modules": []}
— the API returns a short URL that opens directly in the browser.
Never create local files. Full guide: CLI integration guide
• JS coding guide
• llms.txt