An agent can get a vector canvas with artboards, shapes, text and export running in a weekend. What Sketch sells is the finished tool: a native Mac app that stays fast on big files, a precise path and text engine, symbols with overrides, shared libraries, real-time editing and developer handoff. That is years of polish, and your .sketch files, libraries and plugins sit on top of it. A personal build can open and export .sketch artboards; designing in it every day is another matter. Penpot and Inkscape are the free ways out.
Before you buildSketch has no free plan, but its Mac-only licence is a one-time $120 and keeps working offline. Penpot is free and open source if you want a full tool instead of a viewer.
Build me a local viewer and light editor for Sketch documents to replace Sketch for quick edits and exports. Requirements: - Node.js 22 + TypeScript: a React UI built with Vite, `react-konva` for the canvas and `zustand` for state. A small Fastify server only reads and writes files in ./docs/. `npm start` serves http://127.0.0.1:4860. - Read .sketch files (a zip of JSON, opened with `fflate`) using the types from `@sketch-hq/sketch-file-format-ts`: pages, artboards, groups, rectangles, ovals, shape paths, text, bitmaps and symbol instances. Draw fills, borders, corner radius, opacity and simple shadows; layers you can't draw are shown as grey boxes and listed in a panel. - Canvas: pan with space + drag, zoom 10% to 800%, select, shift-click multi-select, and a layers tree with hide, rename and lock. Clicking a symbol instance selects the instance. - Edit: move, resize, fill, border, opacity, corner radius and text content. Write changes back into the document JSON and leave untouched layers exactly as they were, so unknown properties survive. Save as a new .sketch file, never over the original, keeping the last 20 saves in ./docs/.history/. - Export artboards and slices at 1x, 2x and 3x as PNG, and as SVG built from the layer data, using `@resvg/resvg-js` for PNG; a PDF with one artboard per page via `pdfkit`. - Fonts: load files from ./fonts/; warn once per missing font and name the fallback used. - Single user. No accounts, no telemetry, local-first. - Out of scope: shared libraries, live collaboration, prototyping, plugins, boolean operations. - README: setup, supported layer types, and an honest list of where output differs from Sketch (text wrapping, blurs, boolean paths).
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Sketch.
Add a CLI to the Sketch viewer in this folder. Requirements: - `npm run export -- <file.sketch> --out ./assets --formats png,svg --scales 1,2,3` exports every artboard and slice that has export presets, naming files from the layer name and scale. - A `--list` flag prints artboards, slices and their presets without writing anything. - Exit with code 1 and a list of layer names if any export fails. - Add a sample npm script and update the README.
Add a tokens panel to the Sketch viewer in this folder. Requirements: - List every colour used in fills and borders with a count, and every text style (font, size, weight, line height) found in the document. - A button exports them as CSS custom properties and as a JSON file in ./docs/tokens/. - Show where a value is used and select those layers in the canvas when clicked. - Update the README.
Add symbol overrides to the Sketch viewer in this folder. Requirements: - Show the overrides of a selected symbol instance (text, image, nested symbol) in the properties panel and let me change text and image overrides. - Write them back in the instance's overrideValues in the same format Sketch uses, without touching other properties. - Detach to group converts an instance into a plain group of layers, with a confirmation. - Update the README with what is not supported.
Reviews of Sketch keep citing the same reasons: a native Mac app that feels fast and works offline, strong vector tools and a plain one-time licence option. Existing files, libraries and plugins keep teams on it once their workflow is built around them.
Estimate · Runs locally with nothing to pay afterwards. A canvas that reads real Sketch files needs many rounds of fixing, so expect high token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Standard | $14 | $12 | Real-time collaboration, unlimited documents, unlimited free viewers, document version history, free developer handoff; 1 Workspace with 50 GB per editor. |
| Professional | — | $24 | Everything in Standard plus single sign-on, project archiving and permissions groups. |
| Enterprise | — | $44 | Everything in Professional plus SCIM provisioning, BYOK encryption, unlimited storage, dedicated support, custom security reviews and terms. |
| Mac-only licence | custom | — | One-time $120 per seat with one year of updates; the native Mac app only, with local documents and offline work. |
No free plan. A 30-day trial needs no card, and Sketch is free for education.
Not really. Reviews of Sketch keep citing the same reasons: a native Mac app that feels fast and works offline, strong vector tools and a plain one-time licence option. Existing files, libraries and plugins keep teams on it once their workflow is built around them. The prompt on this page builds the closest honest substitute.
About $14 a month on the Standard plan per seat, $168 a year (checked 2026-10-19).
A native Mac app that stays fast on large documents, and the full vector and text engine; Real-time editing and version history in a shared Workspace; Shared libraries of symbols, styles and variables across documents; Developer handoff, where developers inspect designs and export assets for free; Plugins and the iPhone and iPad app for previewing and mirroring. If any of those matter to you, keep paying.
Yes: Penpot (open source), Inkscape (open source), Graphite (open source).