Yatı́h PinePaper Studio

Ełts'ı̨́ otehi naélthi dek'éh: ełts'ı̨́-ohní, AI-honı́, gaye ní:kon dëne ets'ánáhéłdzı̨.

Bets'ı̨́ Ełts'ı̨́

PinePaper Studio ëłë ełts'ı̨́ naélthi dek'éh danëhı́lé. Bets'ı̨́ tsé-élı ełts'ı̨́ ets'ánáhéłdzı̨ hı́łchá łátse ełts'ı̨́, tsé-élı ełts'ı̨́, gaye łáhı nëné yatı́. Eltsi ets'ánáhéłdzı̨ gaye AI-honı́ danëhı́lé ohní, ełts'ı̨́ naélthi dek'éhéłtsi gaye dek'éh ní:kon ełts'ı̨́ nëné.

Łé Ní:kon Ełts'ı̨́

🤖

AI-Honı́ Danëhı́lé

Ełts'ı̨́ honı́ kë-gha ełts'ı̨́ AI ełtı́. Nëchá API ełts'ı̨́ AI ets'ánáhéłdzı̨ ełts'ı̨́, naélthi, gaye yédá-naélthi dek'éh yatı́.

🎬

MP4 gaye GIF Yédá-naélthi

Yédá-naélthi MP4 (H.264 WebCodecs ohní) Instagram, TikTok, gaye LinkedIn kë-gha. GIF ełts'ı̨́ Twitter, Discord, gaye yatı́h kë-gha. Gaye naélthi SVG gaye PNG.

⏱️

Sa gaye Ełts'ı̨́

Nëchá sa ełts'ı̨́ ełts'ı̨́ naélthi kë-gha. Ełts'ı̨́ ełtı́ sa ełts'ı̨́ kë-gha, 5 ełts'ı̨́ dałtsi, gaye nëné-yéhé ełts'ı̨́.

🌍

Nëné Nëchá-Ełts'ı̨́

52 yatı́hé gaye ní:kon dek'éhełtsi ełts'ı̨́ Chinese, Arabic, Hindi, Bengali, gaye emoji. Ełts'ı̨́ ní:kon dëne kë-gha, nëné.

🚀

Ełts'ı̨́-Ohní Ełts'ı̨́

Hı́łchá kékon ełts'ı̨́. Ełts'ı̨́ ní:kon ets'ánáhéłdzı̨ eltsi ełts'ı̨́ ohní. Ełts'ı̨́ kë-te ełts'ı̨́, nı́ts'ı̨ gaye honı́ yatı́.

📋

Ełts'ı̨́ Dek'éhéłtsi

Honı́ honı́ ełts'ı̨́ kë-gha. Ełts'ı̨́ ełts'ı̨́-kë, naélthi dek'éhéłtsi, gaye nëchá danëhı́lé ełts'ı̨́. Bets'ı̨́ ełts'ı̨́ ełts'ı̨́ kë-gha.

🎨

Nake Dánáhı́lé

Ełts'ı̨́ dánáhı́lé dëne ełts'ı̨́ kë-gha gaye tsé-élı API AI ets'ánáhéłdzı̨ gaye ełts'ı̨́ kë-gha. Nake dánáhı́lé, łátse ełts'ı̨́: ełts'ı̨́ ełts'ı̨́.

🖨️

Dek'éhéłtsi-Ełts'ı̨́ Danëhı́lé

Nëchá dek'éhéłtsi ets'ánáhéłdzı̨ A3, A4, A5, Letter, Legal, gaye Tabloid ełts'ı̨́ 300 DPI kë-gha. PDF yédá-naélthi bleed gaye trim marks kë-gha, gaye nëchá-DPI PNG (600 DPI kë).

v0.4
🦴

Ts'é-ghą Ełts'ı̨́

Ts'é-ghą naélthi ts'é, FK naélthi, gaye FABRIK IK ełts'ı̨́ kë-gha. Bets'ı̨́ gaye ełts'ı̨́ danëhı́lé, ets'ánáhéłdzı̨ ełts'ı̨́ (dëne, dı̨̨gh-kë, nátse'édé), gaye sa ełts'ı̨́ kë-gha.

v0.4
🎭

Ełts'ı̨́ gaye Ełtı́

Ets'ánáhéłdzı̨ gaye ełtı́ ełts'ı̨́ ełts'ı̨́ 7 ełts'ı̨́ kë-gha (ghost, neon, shadow, glow, xray, dreamy, vintage). Naélthi ełts'ı̨́, naélthi hover/click ełts'ı̨́, gaye kë ełts'ı̨́ dánáélthi.

v0.4
✂️

Ełts'ı̨́ gaye Nı́ts'ı̨

Naélthi ts'é dek'éhełtsi ełts'ı̨́ tı̨ kë-gha. Nëchá nı́ts'ı̨ clip/subtract/intersect ełts'ı̨́ kë-gha, nı́ts'ı̨ ełtı́, naélthi danëhı́lé (14 ełts'ı̨́), gaye vertex naélthi.

v0.4
🔗

Procedural Relations

Eltsi ełtı́ ełts'ı̨́: driven_by (ełtı́), wiggle (tsí-naélthi naélthi), gaye time_expression (ełts'ı̨́ t kë-gha). Gaye yı́dá-ełtı́ (precomps) ełts'ı̨́ sa-ts'é kë-gha.

v0.4
🌐

Infinite Canvas

Draw anywhere without boundaries. Unbounded canvas mode removes all size restrictions — pan and zoom freely across an infinite workspace.

v0.4
🖌️

Drawing Tools

6 professional drawing tools: pen, ink brush, marker, spray can, eraser, and fill bucket. Each with custom cursors and optimized stroke algorithms.

v0.4
🧊

Perspective Rendering

Project primitives (cube, sphere, cylinder, torus, cone) onto the canvas with 5 projection types. GPU-accelerated rendering (WebGPU/WebGL2), orbital camera, and selectable & draggable perspective objects.

v0.5
🎛

GPU Image Filters

Real-time image processing powered by WebGPU compute shaders with WebGL2 fallback. HSL adjustment, brightness, contrast, posterize, edge detection, color tint, vignette, blur, and filter chaining in a single GPU pass.

v0.5
✂

Image Segmentation

Freehand lasso tool to select and extract image regions at full native resolution. 8 cutout style presets (papercut, postcard, sticker, poster, mono, sketch, warm, cool) combine GPU filters with shadow effects.

v0.5
📐

Math & Science Engine

Numerical computing powered by math.js — ODE solvers (RK4/RK45), FFT spectrum analysis, function plotting, parametric curves, dynamic system simulation, and parametric surfaces in perspective. Real math, animated on canvas.

Compliance & Trust

Level AA conformance, W3C WAI Web Content Accessibility Guidelines 2.1

WCAG 2.1 AA

Accessibility shadow tree for screen reader canvas navigation. Keyboard navigation, live region announcements, skip links, contrast auditing, and motion sensitivity checks. Uses pp:PinePaper ontology for semantic item descriptions.

🔒

Security Headers

HSTS with preload, Content Security Policy, X-Frame-Options, X-Content-Type-Options, Permissions-Policy. No camera, microphone, geolocation, or payment API access. Frame-ancestors restricted.

👁

Privacy by Design

100% client-side processing. No server uploads, no cookies, no user data collection. All designs stay in your browser. Export locally — nothing leaves your device unless you choose to share.

Ets'ánáhéłdzı̨ gaye Ełts'ı̨́

Nëchá Ets'ánáhéłdzı̨

  • ▹ Paper.js: Vector dek'éh gaye dánáhı́lé
  • ▹ HTML5 Canvas: Honı́ naélthi gaye yédá-naélthi
  • ▹ Vanilla JavaScript: T'azı́, honı́, hı́łchá kékon bets'ı̨́
  • ▹ Timeline Engine: Ełts'ı̨́ ełts'ı̨́ gaye ełts'ı̨́ dałtsi
  • ▹ Rigging Engine: Ts'é-ghą naélthi FK/IK ełts'ı̨́ gaye danëhı́lé ełts'ı̨́ kë-gha v0.4
  • ▹ Design Knowledge Graph: Yatı́ ontology 25+ ełtı́ ełts'ı̨́, 35+ ełts'ı̨́ dałtsi, gaye danëhı́lé nëné v0.4
  • ▹ Rust/WASM Runtime: Optional WebAssembly acceleration for widget computation — 10-100x faster relation processing, no GC pauses. Falls back to JS when WASM isn't available v0.5
  • ▹ pp:PinePaper Ontology: 55-token semantic vocabulary (items, relations, animations, masks, generators) — the language of PinePaper animations. Embedded in every exported widget v0.5
  • ▹ Sentry: Ełts'ı̨́ beélthi gaye dałtsi yatı́h

Yédá-naélthi Danëhı́lé

  • ▹ WebM Video: VP9 codec - frame-accurate, best quality for animations
  • ▹ MP4 Video: H.264 WebCodecs API ohní - ełts'ı̨́ dëne-yatı́hé kë-gha
  • ▹ GIF Animation: gif.js Web Workers ohní - ełts'ı̨́ yatı́h kë-gha
  • ▹ PDF for Print: 300 DPI bleed (3-5mm) gaye trim marks kë-gha - nëchá dek'éhéłtsi
  • ▹ High-DPI PNG: 600 DPI kë nëchá dek'éhéłtsi ełts'ı̨́ kë-gha
  • ▹ Animated SVG: Naélthi SVG SMIL ohní
  • ▹ Interactive Widget: Self-contained HTML with scene-specific tree-shaken code (~8-20KB). WASM-accelerated when available. Embed anywhere — no CDN, no API, no dependencies v0.5
  • ▹ Lottie JSON: Industry-standard animation format. Auto-bakes procedural animations into native keyframes for any Lottie player v0.4

Naélthi Ełts'ı̨́

Dhëdhe Nádé Rotate Łátse-dálı Ną́hele Tsí-naełthi Tsí-naélthi Shake Tsé-élı Dek'éhéłtsi-naélthi Ełts'ı̨́ Tı̨ Ełts'ı̨́ Naélthi ✨ Ełts'ı̨́ Tı̨ Kë Naélthi Tı̨ Path Morphing 13 Deform Presets 100+ Animation Presets

Effect System

10 Visual Effects Sparkle Blast Fire Smoke Rain Snow Confetti Ripple Glow Electric 14 Mask Presets 19 Blend Presets 12 Blend Modes

On-Device AI EXPERIMENTAL

PinePaper supports client-side LLMs that run entirely in your browser — no account, nothing sent to a server. Chrome's built-in Gemini Nano, or any other in-browser model, can follow this experimental process to let its agent talk to PinePaper's tools directly.

The model emits PinePaper tool calls constrained by a grammar (a JSON schema on Chrome's Prompt API, an EBNF grammar on WebLLM), so the output is always valid and runs straight onto the canvas — a prompt becomes a scene in one step. Find it under AI / Code → Assistant in the editor. Being on-device, it's free and private; quality tracks whatever small model your browser provides, while the Cloud tab and MCP below give you larger models for higher fidelity.

PinePaper MCP Nëchá-Ełts'ı̨́

Use PinePaper with Claude Desktop and other AI assistants via the @pinepaper.studio/mcp-server npm package. Create animated graphics using natural language:

Pair MCP with the official Claude Skill

The Skill teaches Claude when to reach for PinePaper and how to drive it correctly. Install once and ask in plain English — "animate this logo", "make a pulsing LIVE badge" — and Claude routes through PinePaper instead of generating HTML/CSS.

Skill docs →

Honı́ Ełts'ı̨́

1. Yı́dá-naélthi nëné:

npm install -g @pinepaper.studio/mcp-server

2. Ełts'ı̨́ Claude Desktop config:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "pinepaper": {
      "command": "npx",
      "args": ["-y", "@pinepaper.studio/mcp-server"]
    }
  }
}

3. Ets'ánáhéłdzı̨ Claude Desktop:

"Ełts'ı̨́ dëts'é dhëdhe dek'éhełtsi itwé HELLO" "Nëné ghą-naélthi sa"

Ets'ánáhéłdzı̨ Ets'ánáhéłdzı̨

  • • Ełts'ı̨́ dek'éhéłtsi, danëhı́lé, dek'éh
  • • Ełts'ı̨́ ełtı́ (25+ ełts'ı̨́: orbits, follows, wiggle, gaye kotak)
  • • Ełts'ı̨́ gaye ełts'ı̨́ naélthi
  • • Ts'é-ghą ełts'ı̨́ (ts'é, IK/FK)
  • • Ełts'ı̨́ ełts'ı̨́ gaye ełts'ı̨́
  • • Dek'éh, nëné, dek'éhéłtsi ełts'ı̨́
  • • Ełts'ı̨́ ełts'ı̨́ ełts'ı̨́-kë (14 dałtsi)
  • • Vertex deformation (13 presets: fold, twist, wave, etc.)
  • • Yédá-naélthi SVG, yatı́ ełts'ı̨́

Ets'ánáhéłdzı̨ AI Ets'ánáhéłdzı̨

  • • Claude Desktop
  • • Ní:kon MCP-ets'ánáhéłdzı̨ ets'ánáhéłdzı̨
  • • Ełts'ı̨́ ets'ánáhéłdzı̨ API ohní

Danëhı́lé Yatı́ Ets'ı́-nëné

Unveiled in v0.4, the Design Knowledge Graph is a semantic reasoning layer that maps relationships between visual elements. Unlike traditional tools that only store pixel or vector data, PinePaper understands the intent behind the design—whether an object "orbits" another, "points at" a target, or "follows" a path.

Ëłë eltsi ełts'ı̨́ ełts'ı̨́ AI ets'ánáhéłdzı̨ nadéch'ánı́é nëchá naélthi gaye danëhı́lé ełtı́, ełts'ı̨́ nëchá naélthi dek'éh bets'ı̨́ yatı́.

Yatı́ Dek'éhéłtsi

Danëhı́lé Yatı́ Ets'ı́-nëné ełts'ı̨́ ëłë dek'éhéłtsi ohní:

Ełts'ı̨́ gaye AI Ets'ánáhéłdzı̨ Kë-gha

PinePaper exposes a comprehensive global API (window.PinePaper) that enables programmatic control of the entire application. AI assistants and developers can:

  • • Ełts'ı̨́ gaye ets'ánáhéłdzı̨ dek'éhéłtsi, danëhı́lé, gaye SVG ets'ánáhéłdzı̨
  • • Ets'ánáhéłdzı̨ naélthi (9 ełts'ı̨́) gaye ełts'ı̨́ (sparkle, blast)
  • • Ełts'ı̨́ ełts'ı̨́ naélthi sa ełts'ı̨́ kë-gha
  • • Yédá-naélthi MP4, GIF, SVG, gaye PNG API ohní
  • • Ets'ánáhéłdzı̨ ełtı́ (orbits, follows, attached_to)
  • • Ełts'ı̨́ ts'é-ghą naélthi gaye danëhı́lé ełts'ı̨́ kë-gha v0.4
  • • Ełts'ı̨́ yı́dá-ełtı́ (precomps) ełts'ı̨́ sa-ts'é kë-gha v0.4
  • • Ełts'ı̨́ nëchá dałtsi gaye łáhı ełts'ı̨́ ełts'ı̨́

Ełts'ı̨́ API Ets'ánáhéłdzı̨:

// Create animated text
const text = app.create('text', {
  content: 'Hello World', x: 400, y: 300, fontSize: 48, color: '#4a9eff'
});

// Apply animation preset
app.animate(text, { animationType: 'pulse' });

// Keyframe animation with easing
app.create('circle', {
  x: 400, y: 300, radius: 50, color: '#ef4444',
  animationType: 'keyframe',
  keyframes: [
    { time: 0, properties: { y: 100, opacity: 0 } },
    { time: 1, properties: { y: 300, opacity: 1 }, easing: 'bounce' }
  ]
});

// Declarative relations
app.addRelation(moonId, earthId, 'orbits', { radius: 100, speed: 0.5 });

Bets'ı̨́ Dánáhı́lé

Ełts'ı̨́ honı́ AI-honı́ naélthi dek'éh ets'ánáhéłdzı̨. Kotak ets'ánáhéłdzı̨ AI ets'ı́-łthi łátse ełts'ı̨́, PinePaper ełts'ı̨́ honı́ sa kë-gha ełts'ı̨́ dëne gaye ełts'ı̨́.

Bets'ı̨́ ëłë ełts'ı̨́ naélthi dek'éh łátse t'azı́ dek'éhéłtsi kë-gha. Kisi ełts'ı̨́ ełts'ı̨́ kë-gha, gaye AI ełtı́ ełts'ı̨́ ets'ánáhéłdzı̨ yatı́ kë-gha, PinePaper ełts'ı̨́ ets'ánáhéłdzı̨ nëchá naélthi dek'éh ełts'ı̨́ honı́.

✨ Łé Ní:kon Honı́?

v0.5 shipped data-driven charts, vision-puppeteering (webcam → rigged character), the measurement system with rulers + snap, glTF / BVH export, and the Claude Skill + MCP plugin marketplace. Up next: deeper agent integrations, animation state machines as a first-class primitive, and a growing template library across art, education, and motion-design domains.

Ełtı́ gaye Łáhé Ełts'ı̨́

PinePaper Studio danëhı́lé ełts'ı̨́ bets'ı̨́ ełtı́ kë-gha. Ełts'ı̨́ ełts'ı̨́ yatı́h, ets'ánáhéłdzı̨ bets'ı̨́, gaye ełts'ı̨́ ełts'ı̨́. Bets'ı̨́ ełts'ı̨́ ełts'ı̨́ dëne bets'ı̨́ gaye AI-ełts'ı̨́ ełts'ı̨́.

Ełts'ı̨́ gaye Łáhé

PinePaper Studio is Freeware v1.0 (currently v0.5.4-beta) and free to use for personal and commercial purposes. Create unlimited animations, export unlimited files, and use them in any project without restrictions. We believe powerful creative tools should be accessible to everyone.

59
Yatı́hé Ets'ánáhéłdzı̨
25+
Ełtı́ Ełts'ı̨́
111+
API Methods
7
Yédá-naélthi Danëhı́lé

Licensing & Open Source Credits

PinePaper Studio is built on the shoulders of giants. We are grateful to the maintainers of these open-source projects, without which PinePaper would not exist. Each library is bundled under its original license — please refer to the linked source for full terms.

PinePaper Studio itself

  • ▹
    Application code Proprietary Freeware
    Free to use; source code is not licensed for redistribution, modification, or forking. See LICENSE and Terms of Service.
  • ▹
    PinePaper Ontology (pp: vocabulary) CC0 1.0 Public Domain
    The semantic vocabulary and Knowledge Graph are dedicated to the public domain. Use pp: triples in your own canvases, exports, training data, or models with no attribution required. See /ontology/.
  • ▹
    MCP Server MIT
    The Model Context Protocol server is open source and may be forked, modified, and redistributed. See github.com/pinepaper/mcp-server.
  • ▹
    PineWidget runtime Embeddable
    The standalone widget player ships unobfuscated and is intended for third-party embedding.
▹
Paper.js MIT
Vector graphics rendering foundation
▹
Paperlab Inspiration / reference · Apache-2.0
Referenced for its agent-first, declarative approach to physical paper behaviors, material stocks, surface effects, layouts, and lighting. No Paperlab code is bundled or copied into PinePaper Studio.
▹
math.js Apache-2.0
Expression evaluation, ODE solvers, numerical analysis
▹
opentype.js MIT
Font glyph parsing for the Font Studio
▹
planck-js MIT
Box2D physics engine for canvas item simulation
▹
d3-geo ISC
Geographic projections for the Map System
▹
d3-geo-projection ISC
Extended map projections (Robinson, Mollweide, Winkel)
▹
topojson-client ISC
TopoJSON-to-GeoJSON converter for map data
▹
gif.js MIT
Animated GIF export via Web Workers
▹
jsPDF MIT
PDF export with bleed and trim marks
▹
@sentry/browser MIT
Error tracking (production build only)
▹
DOMPurify Apache-2.0 OR MPL-2.0
Cure53's XSS sanitizer — runs on every imported SVG before Paper.js sees it, so a malicious file can't smuggle scripts or event handlers into the editor.
▹
@observablehq/plot ISC
Data visualization scales and transforms for the Chart System
▹
@huggingface/transformers Apache-2.0
Vendored browser ESM build + ONNX runtime WebAssembly. Powers PinePaper's on-device object detection (the "Detect objects" / open-vocabulary "Find" features) — inference runs on your GPU (WebGPU) or CPU; the image never leaves your device.
▹
DETR ResNet-50 Apache-2.0
Meta AI's DETR object-detection model (80 COCO classes). Runs in the browser via transformers.js (fp16 on WebGPU, q8 on CPU) behind the "Detect objects" button — finds objects in an image so you can label, relate, or composite onto them.
▹
OWL-ViT (base-patch32) Apache-2.0
Google Research's open-vocabulary detector — finds anything you describe in text, not just fixed classes. Powers the "Find" feature's AI fallback (zero-shot detection inside a photo). Large model (~150 MB), so it's strictly opt-in and downloads once on first use; runs fully on-device.
▹
Qwen2.5-1.5B-Instruct Apache-2.0
Alibaba's Qwen2.5 instruction-tuned LLM. Quantized (q4f16) and run fully on-device via WebGPU to power the PinePaper client AI assistant — prompts never leave your device. A smaller Qwen2.5-0.5B-Instruct (also Apache-2.0) is used as the low-storage fallback.
▹
WebLLM (MLC) Apache-2.0
MLC-AI's in-browser LLM runtime — loads the Qwen2.5 weights and runs inference on WebGPU for the on-device assistant.
▹
LibreTranslate AGPL-3.0 Build-time
Self-hosted machine-translation API used at build time to translate the editor UI, User Guide, and Knowledge Hub into the supported languages. Not bundled or network-served by the app — only its output (the translated text) ships.
▹
Argos Translate MIT Build-time
The open neural translation engine (and open language models) that LibreTranslate runs under the hood for our build-time localization pipeline.

Each linked project's repository carries its own license file. We ship obfuscated production builds so a local node_modules tree isn't in the distribution; we keep this list above and these upstream links current instead. If we have missed attributing a project, please let us know.