storytold/vectorcraft

★ 11,119⑂ 5,388

VectorCraft: An open-source, vector art tool written by scratch in pure Rust

About storytold/vectorcraft

storytold/vectorcraft is an open-source project on GitHub, mainly written in Rust. VectorCraft: An open-source, vector art tool written by scratch in pure Rust It currently holds 11,119 stars and 5,388 forks with 0 open issues, and was last pushed on an unknown date (repository created unknown).

Project Overview

AI Homed tracks it on the Today's Trending board.

GitHub Repository Details

Repository storytold/vectorcraft · default branch - · size 0 KB · watchers 0 · source: GitHub REST API and repository README

README

https://github.com/storytold/vectorcraft/blob/HEAD/ArtCraft

https://github.com/storytold/vectorcraft/blob/HEAD/VectorCraft icon: an engraved dragon on a red tile

VectorCraft

Vector illustration; an open-source, modern vector art application, built in pure Rust.

A fast, open-source vector illustration workflow. It runs natively on macOS, Windows, Linux and FreeBSD, and in the browser via WebAssembly. Built by the ArtCraft team.

https://github.com/storytold/vectorcraft/blob/HEAD/Status: in active development https://github.com/storytold/vectorcraft/blob/HEAD/Written in pure Rust https://github.com/storytold/vectorcraft/blob/HEAD/Runs on macOS, Windows, Linux, FreeBSD and the web https://github.com/storytold/vectorcraft/blob/HEAD/MCP server for agents https://github.com/storytold/vectorcraft/blob/HEAD/License: MIT OR Apache-2.0
https://github.com/storytold/vectorcraft/blob/HEAD/Scanned by SonarCloud https://github.com/storytold/vectorcraft/blob/HEAD/Reviewed by CodeRabbit

https://github.com/storytold/vectorcraft/blob/HEAD/Join the ArtCraft community on Discord

VectorCraft on getartcraft.com · ArtCraft · All Crafting Apps


https://github.com/storytold/vectorcraft/blob/HEAD/VectorCraft editing the Neon Drive poster: the title is selected, the Appearance panel shows the settings of its live Outer Glow, and the Properties panel shows its character settings
Neon Drive: a Pathfinder-cut sun, live Outer Glow on the type and grid, and clipping masks · examples/neon-drive.vectorcraft

[!NOTE]
ArtCraft is a community of artists from all walks of life. Digital, generative, music,
games — if you make things, you're one of us. Come say hi on Discord.

A look around · Made in VectorCraft · Why VectorCraft · Quick start · Status · Downloads · The Crafting Apps · License

A look around

https://github.com/storytold/vectorcraft/blob/HEAD/Three live blend ribbons clipped to the artboard, one selected with its key paths showing; the Layers panel lists the clip group, the blends and the selected blend's two key paths

Live Blends and Layers: editable key paths, smooth colour, every object a row

https://github.com/storytold/vectorcraft/blob/HEAD/Direct Selection tool showing anchor points and Bézier handles on a crescent built with Pathfinder, with the contextual task bar below it

Pen and Direct Selection: real Bézier anchors and handles, plus a contextual task bar

https://github.com/storytold/vectorcraft/blob/HEAD/A still life of a vase, a bowl, a sphere and a bottle made with 3D Revolve; the vase is selected and the Revolve dialog shows its rotation, cap and view settings beside the rotation gizmo

3D Revolve: smooth vector shading, caps and a rotation gizmo · examples/still-life.vectorcraft

https://github.com/storytold/vectorcraft/blob/HEAD/A bracket drawing in the light theme with linear, angular, diameter and radius dimensions; the Dimension tool is active and the Properties panel shows the selected dimension's units, precision and style

Dimension tool: lengths, angles and radii that follow the art they measure · examples/bracket-drawing.vectorcraft

https://github.com/storytold/vectorcraft/blob/HEAD/Two lit building facades drawn on the left and right planes of a two-point perspective grid at sunset, with the Perspective Selection tool and the Plane Switching Widget

Perspective Grid: art attached to its planes stays editable in perspective · examples/perspective-city.vectorcraft

https://github.com/storytold/vectorcraft/blob/HEAD/Four artboards in the light UI theme: Pathfinder, Gradient Mesh, radial Repeat and Envelope Distort

Multiple artboards, light theme: Pathfinder · Gradient Mesh · live radial Repeat · Envelope Distort · examples/feature-sheet.vectorcraft

Made in VectorCraft

Every piece below was built entirely through VectorCraft's command API, the same one the MCP server exposes to agents, and exported by VectorCraft's own renderer. The source files are in examples/.

https://github.com/storytold/vectorcraft/blob/HEAD/Neon Drive synthwave poster: a striped orange sun setting between purple mountains over a glowing pink grid

Neon Drive: synthwave poster with glowing type and grid

https://github.com/storytold/vectorcraft/blob/HEAD/Dusk poster: a gradient sky with stars and birds, a glowing sun behind layered purple mountains and pine trees

Dusk: gradient sky, glowing sun, layered mountains

https://github.com/storytold/vectorcraft/blob/HEAD/Live Blends: three wide ribbons blending yellow to pink and teal to purple, crossing over a dark background

Live Blends: 70 steps, smooth colour, editable spines

https://github.com/storytold/vectorcraft/blob/HEAD/Still life: a teal vase, a coral bowl, a white sphere and a mustard bottle on a warm table, all made with 3D Revolve

Still Life: four revolved profiles with smooth vector shading

https://github.com/storytold/vectorcraft/blob/HEAD/Radial Repeat mandala: teal petals around a coral center, ringed by yellow dots

Radial Repeat: a live mandala

https://github.com/storytold/vectorcraft/blob/HEAD/Envelope Distort: rainbow stripes and the word WARP bent into a waving flag

Envelope Distort: striped type warped into a flag

https://github.com/storytold/vectorcraft/blob/HEAD/Gradient Mesh: three softly shaded purple, pink and cyan spheres on a dark background

Gradient Mesh: shaded spheres

https://github.com/storytold/vectorcraft/blob/HEAD/Pathfinder: a purple gradient crescent moon and three orange stars on a peach background

Pathfinder: a crescent and stars from exact booleans

Why VectorCraft

Pathfinder, Smart Guides, Appearance, Swatches, Layers and more. You already know how to use it. full retina resolution while the interface stays at 120 fps. sharing, and property-tested file round trips. PDF-compatible .ai) import and export, PNG/JPEG/WebP export, Export for Screens, and SVGZ, templates, GIF, TIFF and BMP on open. control channel and an MCP server, so Claude and other agents can draw, edit and export the way a person does.

Quick start

For posters and sewing patterns, see Print a large poster across multiple pages.

git clone https://github.com/storytold/vectorcraft
cd vectorcraft

cargo run --release -p vectorcraft # desktop app cargo run --release -p vectorcraft -- examples/dusk-poster.vectorcraft cargo run --release -p vectorcraft -- --control 7979 # + JSON control channel cargo run --release -p vectorcraft-cli -- mcp # MCP server (stdio) cargo run --release -p vectorcraft-cli -- run --in examples/ribbons.vectorcraft --export out.pdf # headless batch cargo run --release -p vectorcraft-cli -- bench examples/neon-drive.vectorcraft # render timing cargo xtask bundle # dist/VectorCraft.app (macOS) cd apps/vectorcraft-web && trunk build --release # web build → dist/web cargo xtask ci # fmt, clippy, tests, layering, wasm, vendor names

For text and custom letter shapes, see Typography and Custom Lettering.

Japanese fonts come from storytold/craft-fonts, an optional build input (releases always use it): CRAFT_FONTS_DIR="$PWD/../craft-fonts" cargo run --release -p vectorcraft (an absolute path). Without it, Japanese text uses the installed system fonts. See docs/development.md.

On machines with two graphics processors, VectorCraft renders on the power-saving (integrated) one by default on Windows and macOS, and on the one the desktop runs on under Linux. To choose, use Preferences › Performance › Graphics Processor and restart. If a graphics processor can't show the window, VectorCraft starts again on the next one. To pick one when starting the app, set WGPU_POWER_PREF=high (or low), or WGPU_ADAPTER_NAME to part of its name, such as WGPU_ADAPTER_NAME=nvidia (see docs/development.md).

On native Wayland, winit 0.30 does not deliver dropped files. To open an SVG, use File › Open; to place artwork in the current document, copy and paste the file in a file manager. For file drag-and-drop, set Preferences › Performance › Linux Display Server to X11 (XWayland) and restart, or start the app with WAYLAND_DISPLAY= vectorcraft: the window then opens through XWayland, where drops work (see docs/development.md).

On Linux with Wayland, under KDE Plasma 6.3 or later and under GNOME, VectorCraft doesn't respond to a drawing tablet's pen yet (#491, #2028). Open the window through XWayland instead, where the pen works as a mouse and the app reads its pressure: set the same preference to X11 (XWayland), or to X11 (XWayland) When a Pen Is Attached to use XWayland only when a pen is attached as VectorCraft starts, and restart; or start the app with WAYLAND_DISPLAY= vectorcraft (see docs/development.md).

Use it from Claude Code and other agents

Register the MCP server with Claude Code:

claude mcp add vectorcraft -- /path/to/vectorcraft-cli mcp

To keep an agent to one project's files, give it folders to read and write (the same flags as PhotoCraft):

claude mcp add vectorcraft -- /path/to/vectorcraft-cli mcp --automation-read-root /work/project --automation-write-root /work/project

The details are in docs/mcp.md and docs/control-protocol.md.

Status

VectorCraft is under active development. ROADMAP.md has the stage, the numbers by dimension and what's next; docs/target-app-parity.md the full parity assessment and docs/gaps.md the ranked list of what's missing.

Where we are (2026-10-10): alpha. About 88% of core menu items, tools, effects and formats exist (92.5% of menu items do something), feature depth is ~75%, and we estimate ~65% ready for real work for a mainstream illustrator (~62% across all tracked features): everyday vector illustration is close to usable: drawing and path tools, Pathfinder and Shape Builder, paint, gradients, appearance and transparency, type with styles, threading and Hebrew/Arabic bidirectional layout, and files (SVG, PDF and PDF-compatible .ai with PDF/X, legacy version 7 .ai keeping layers, groups and type, EPS, DXF, EMF/WMF, raster formats, PSD out and PSD/PSB in as their merged image, Print, Package). Affinity documents (.af from Affinity 3, .afdesign, .afpub and, by their content, .afphoto from Affinity 1 and 2) open and place natively: layers, groups, artboards and pages, curves and shapes, fills, gradients and strokes, clipping and masks, text with each paragraph's indents, spacing and leading, tables (as text frames and lines), master pages, shadows, glows, outlines and overlays, embedded Affinity documents and images, with what didn't come in (adjustments, blurs, bevels, brushes…) listed in the import warning; a file whose native data can't be read opens as its embedded preview, saying why. VectorCraft doesn't write Affinity files. Current .af validation includes 33 pinned files, native save/reload and every-board SVG/PDF/PSD export, with fixes for Affinity 3 artboards, source-backed JPEGs and text runs. Scope and limits; source audit and remaining gaps. The interface speaks English, German, Japanese, Korean, Vietnamese, Traditional and Simplified Chinese, Spanish, French, Hungarian, Italian, Polish, Brazilian Portuguese, Russian, Swedish, Ukrainian, Finnish, Bulgarian, Greek, Czech, Georgian and Catalan; localization-parity.md has the details. The scores are self-assessed from our code against public documentation; target-app-parity.md explains how far to trust them.

What's missing:

Where we're going: next is the interaction-fidelity pass, .ai files from real users and start-up stability, alongside the raster-effects package; then type, recent additions and 3D. The ranked list is in docs/gaps.md.

Workspace: crates/{geom, color, doc, pathops, text, effects, three-d, trace, brush, render, svg, pdf, eps, cad, metafile, format, tools, engine, ui-egui, mcp, testkit} and apps/{vectorcraft, vectorcraft-cli, vectorcraft-web}. The egui frontend is its own crate, so the UI can be swapped without touching the engine.

Agent and contributor rules (clean-room, the asset policy, no panics in shipped code, quality gates) are in AGENTS.md; docs/development.md explains how VectorCraft avoids crashing, and docs/releasing.md how releases are built, signed and published. Every bundled asset is listed with its licence in ASSETS.md.

Downloads

New to VectorCraft? Download it from the VectorCraft page on getartcraft.com. That's the easiest way to install it.

Want a specific build or format? On GitHub, the latest release has every build listed below, and all releases has earlier versions and their notes. ` in the file names is the version number, and SHA256SUMS.txt` lists a checksum for every file.

Windows

| Build | Installer | Portable | |---|---|---| | x64 (64-bit Intel/AMD) | vectorcraft--windows-x64.msi | vectorcraft--windows-x64-portable.zip | | arm64 (Snapdragon and other ARM PCs) | vectorcraft--windows-arm64.msi | vectorcraft--windows-arm64-portable.zip | | x86 (32-bit) | vectorcraft--windows-x86.msi | vectorcraft--windows-x86-portable.zip |

Installers and executables are code-signed.

macOS

| Build | File | Notes | |---|---|---| | App, universal (Apple silicon + Intel) | vectorcraft--macos-universal.dmg | Signed and notarized | | Command-line tool, universal | vectorcraft-cli--macos-universal.zip | Signed and notarized |

Linux

| Format | x86_64 | aarch64 (ARM64) | Notes | |---|---|---|---| | AppImage | vectorcraft--linux-x86_64.AppImage | vectorcraft--linux-aarch64.AppImage | Runs anywhere; updates itself with AppImageUpdate (.zsync files) | | Flatpak | vectorcraft--linux-x86_64.flatpak | vectorcraft--linux-aarch64.flatpak | Sandboxed; flatpak install --user | | Debian/Ubuntu | vectorcraft--linux-x86_64.deb | vectorcraft--linux-aarch64.deb | | | Fedora/RHEL/openSUSE | vectorcraft--linux-x86_64.rpm | vectorcraft--linux-aarch64.rpm | | | Tarball | vectorcraft--linux-x86_64.tar.gz | vectorcraft--linux-aarch64.tar.gz | Unpack anywhere |

FreeBSD

| Build | File | |---|---| | x86_64 | vectorcraft--freebsd-x86_64.tar.gz |

Web (WebAssembly)

| Build | File | Notes | |---|---|---| | Static site | vectorcraft-web-.zip | Runs in a modern browser; host it on any static server |

The Crafting Apps

VectorCraft is one of the Crafting Apps: free, open-source creative tools from the ArtCraft team, each written from scratch in Rust and each able to stand on its own.

| | App | What it's for | Code | Learn more | |:-:|---|---|---|---| | https://github.com/storytold/vectorcraft/blob/HEAD/ | PhotoCraft | Image editing: layers, masks, type and real PSD files | GitHub | Website | | https://github.com/storytold/vectorcraft/blob/HEAD/ | VectorCraft | Vector illustration · you are here | GitHub | Website | | https://github.com/storytold/vectorcraft/blob/HEAD/ | FilmCraft | Video editing, color and sound | GitHub | Website | | https://github.com/storytold/vectorcraft/blob/HEAD/ | LightCraft | Photo library and raw development | GitHub | Website | | https://github.com/storytold/vectorcraft/blob/HEAD/ | PdfCraft | Reading, organizing and protecting PDFs | GitHub | Website | | https://github.com/storytold/vectorcraft/blob/HEAD/ | EffectCraft | Motion graphics and visual effects | GitHub | Website | | https://github.com/storytold/vectorcraft/blob/HEAD/ | DesignCraft | Page layout and publishing | GitHub | Website |

And ArtCraft itself, our AI image and video studio for artists who want real control.


https://github.com/storytold/vectorcraft/blob/HEAD/Join the ArtCraft community on Discord

Come make things with us

Our Discord is where artists of every kind hang out: people who paint, shoot, draw, cut film, set type, and people still figuring out what they like to make. Share what you're working on, ask for help, tell us what's broken, or tell us what you wish these tools could do. Whatever your medium and however long you've been at it, you're welcome here.

discord.gg/artcraft · getartcraft.com · The Crafting Apps · VectorCraft

Star history

Star History Chart

License and credits

VectorCraft is dual-licensed under MIT or Apache-2.0, at your option. Copyright (c) 2026 ArtCraft Team and the VectorCraft contributors. Required notices are in NOTICE.

Bundle

GitHub Stars & Activity

11,119Stars
5,388Forks
0Open issues
RustLanguage

GitHub Popularity

GitHub stars11,119
Forks5,388
Open issues0
Primary languageRust
License-
Stars gained today0
Created-
Last pushed-

Trending History

Monthly boardrank #98 · ▲ 0 stars

Related AI Projects

1

openai / codex

Rust★ 132,462⑂ 20,925▲ 702 stars
→
2

pbakaus / impeccable

Rust★ 98,087⑂ 5,785▲ 1,339 stars
→
3

herdrdev / herdr

Rust★ 47,103⑂ 3,762▲ 264 stars
→
4

vercel-labs / agent-browser

Rust★ 45,017⑂ 3,080▲ 86 stars
→
5

cjpais / Handy

Rust★ 35,842⑂ 3,406▲ 572 stars
→
6

t8y2 / dbx

Rust★ 28,365⑂ 2,586▲ 48 stars
→
7

Nasiko-Labs / nasiko

Rust★ 10,911⑂ 2,746▲ 215 stars
→
8

fastrepl / anarlog

Rust★ 9,712⑂ 819▲ 45 stars
→

More AI Rankings