API de desenho 2D para a web independente do renderizador, que desenha a mesma cena com WebGL, Canvas 2D ou SVG.
paperjs/paper.js
Paper.js é uma biblioteca JavaScript de scripting para gráficos vetoriais que desenha e manipula paths no HTML5 Canvas, no navegador ou no Node.js.
- Estrelas
- 15,191
- Forks
- 1,261
- Issues abertas
- 27
- Último commit
- ontem
O que é?
Paper.js é uma portabilidade para JavaScript do Scriptographer, uma ferramenta de scripting para gráficos vetoriais. A biblioteca oferece um scene graph com paths, formas, texto, grupos e símbolos, que podem ser criados e transformados programaticamente em um elemento HTML5 Canvas.
A biblioteca é distribuída no NPM como `paper` para navegadores e bundlers, com um build core que não inclui suporte a PaperScript. Os pacotes complementares `paper-jsdom` e `paper-jsdom-canvas` permitem o uso headless no Node.js, com importação e exportação de SVG pelo jsdom e renderização no canvas pelo node-canvas, que requer Cairo e Pango.
O projeto é desenvolvido com Gulp e pnpm, e os testes rodam no Vitest e no Playwright. Versões de desenvolvimento pré-compiladas da branch develop são publicadas em branches dedicadas.
Recursos principais
- 01Scene graph com paths, formas, texto, grupos e símbolos no Canvas.
- 02Operações de edição de paths, como combinações booleanas e transformações.
- 03Suporte a PaperScript no build completo para navegadores.
- 04Importação e exportação de SVG no Node.js via jsdom.
- 05Renderização no Canvas no Node.js via node-canvas.
Casos de uso
- Criar desenhos vetoriais interativos ou animações no navegador.
- Gerar ou processar gráficos SVG em um script de servidor Node.js.
- Criar editores baseados em Canvas ou ferramentas para diagramas.
Início rápido
- 1
Instale o Paper.js pelo NPM na pasta do seu projeto
npm install paper - 2
Importe-o com um bundler e chame paper.setup() em um elemento canvas
Antes de usar
- A licença não foi detectada nos metadados do projeto; confira a licença do repositório antes de usá-lo.
- Para renderizar canvas no Node.js (paper-jsdom-canvas), é necessário instalar primeiro as bibliotecas nativas Cairo e Pango.
Tópicos
Perguntas frequentes
- O que é paper.js?
- Paper.js é uma biblioteca JavaScript de scripting para gráficos vetoriais que desenha e manipula paths no HTML5 Canvas, no navegador ou no Node.js. Paper.js é uma portabilidade para JavaScript do Scriptographer, uma ferramenta de scripting para gráficos vetoriais. A biblioteca oferece um scene graph com paths, formas, texto, grupos e símbolos, que podem ser criados e transformados programaticamente em um elemento HTML5 Canvas.
- paper.js é gratuito? Qual é a licença?
- paper.js é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- paper.js ainda é mantido?
- Manutenção ativa. O último commit de paper.js foi em 6 de nov. de 2026.
- Para que posso usar paper.js?
- Criar desenhos vetoriais interativos ou animações no navegador. Gerar ou processar gráficos SVG em um script de servidor Node.js. Criar editores baseados em Canvas ou ferramentas para diagramas.
- Como instalar paper.js?
- Instale o Paper.js pelo NPM na pasta do seu projeto: npm install paper Importe-o com um bundler e chame paper.setup() em um elemento canvas
- Onde consigo paper.js?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/paperjs/paper.js
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
App open source de ilustração vetorial, criado do zero em Rust puro e disponível para desktop, FreeBSD e navegador via WebAssembly.
Framework JavaScript para Canvas HTML5, voltado à criação de gráficos 2D interativos, editores de design, quadros brancos e diagramas.
Uma biblioteca leve de animação em JavaScript que anima propriedades CSS, SVG, atributos do DOM e objetos JavaScript simples.
Biblioteca JavaScript de motion graphics para a web, com animações declarativas de formas, redemoinhos, explosões e sequências escalonadas.
Uma skill do Claude Code que transforma um tema curto em um vídeo de motion graphics sincronizado com a batida e renderizado em MP4 com HyperFrames.