bama
BAMA: 모든 Mac 앱을 만들 수 있습니다
JSON으로 시스템을 설명하면 penciled가 연필처럼 그려준다 무료 오픈소스 의존성 없음
Describe a system in a few lines of JSON, or just ask your AI agent, and penciled draws it like a person with a pencil would. Free, open source, no dependencies.
스킬JavaScript · PythonGitHub @himanshu13ps온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Technical diagrams, sketched in pencil. An agent skill and CLI that turns JSON into hand-drawn architecture diagrams. No dependencies.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
An agent skill that turns a small JSON description of a system into a
diagram that looks drawn by hand with a graphite pencil on paper: tapered,
wobbly strokes, layered passes, hatched shading, paper grain and the odd
eraser smudge.README 전문 보기 ↗An agent skill that turns a small JSON description of a system into a diagram that looks drawn by hand with a graphite pencil on paper: tapered, wobbly strokes, layered passes, hatched shading, paper grain and the odd eraser smudge.
npx skills add himanshu13ps/penciled
This works with Claude Code, Cursor, Codex, OpenCode and other agents. Then ask your agent for a diagram:
sketch the architecture of this repo as a hand-drawn diagram
The skill tells the agent how to model the system, write the JSON, fix what
the validator reports and render the result. Its instructions are in
skills/penciled/SKILL.md.
git clone https://github.com/himanshu13ps/penciled
cd penciled
node skills/penciled/src/cli.js examples/web-app.json -o diagram.svg
| Command | Does |
|---|---|
penciled diagram.json -o out.svg | Draw an SVG |
penciled diagram.json -o out.html | Write the interactive viewer (or add --html) |
penciled diagram.json -o out.png | Write a PNG; needs Chrome, Edge, Chromium or Brave installed (--scale 1 to 4, default 2) |
penciled validate diagram.json | Check without drawing (--json for machine-readable output) |
--seed N | A different hand-drawn take; the same seed always gives the same drawing |
--strict | Treat warnings as failures |
Here penciled means node skills/penciled/src/cli.js. Rendering runs the
validator first: errors stop it, warnings are printed and drawing goes ahead.
The input format, every field and every check are described in
skills/penciled/schema/README.md. A
minimal input:
{
"version": "0.1",
"type": "architecture",
"nodes": [
{ "id": "client", "label": "Client", "shape": "person" },
{ "id": "api", "label": "API", "sublabel": "Go", "shape": "rounded" },
{ "id": "db", "label": "Database", "shape": "database", "shade": "light" }
],
"edges": [
{ "from": "client", "to": "api", "label": "HTTPS" },
{ "from": "api", "to": "db" }
]
}
The HTML page carries the renderer with it, so it works offline, straight
from disk. You can redraw with a new seed (R), switch paper,
ruling, pencil and flow direction, zoom and pan, read the validator's
warnings, and save SVG, PNG, JPG, or JSON with your chosen look baked in.
Try examples/web-app.html (download it and open
it locally; GitHub shows HTML as source).
Each input in examples/ has its rendered SVG and a JPEG preview:
| Example | Shows |
|---|---|
web-app | Groups, nesting, top-to-bottom flow |
microservices | A gateway fanning out to services, queues, an external API |
url-shortener | Made by following the skill's own instructions from a one-line request |
ci-pipeline | Left-to-right flow, documents, two groups |
data-platform | Aged paper on a grid, 4B pencil, shaded databases |
shapes | All seven shapes on grid paper |
event-pipeline | Manual positions, lined paper, HB pencil |
pencil-variants | 4B pencil, shading levels, dashed and two-way arrows |
skills/penciled/ the skill: everything an agent installs
SKILL.md instructions for the agent
src/ renderer, layout, validator, viewer, CLI
schema/ JSON Schema and input reference
fonts/ embedded handwriting font and its licence
examples/ sample inputs with rendered SVG, JPEG and one viewer
docs/ the website (GitHub Pages), with a live playground
tests/ node --test suite (npm test)
scripts/ dev tools (font rebuild)
specs/ plan and design notes
npm test
No dependencies to install. The tests cover rendering, layout, the validator (every error and warning code has a fixture named after it), the browser bundle, the CLI and the website.
The website in docs/ loads a copy of the renderer and the examples. After
changing anything in skills/penciled/src/ or examples/, refresh them
with node scripts/build-site.mjs (a test fails if you forget).
The link preview image, docs/og.png, is made by node scripts/build-og.mjs
(it needs Chrome, Edge, Chromium or Brave, like PNG output).
The demo, docs/demo.gif and docs/demo.mp4, is recorded from the playground by
node scripts/record-demo.mjs (needs Playwright and ffmpeg).
MIT, see LICENSE. The Caveat font is under the SIL Open Font
License, see skills/penciled/fonts/OFL.txt.