Windrose Developer

Extend the canvas

We've laid the foundations so you can build on the platform 612,000 designers already draw in. Write extensions and integrations, read and write Windrose files directly as JSON, or render documents straight from the command line.

Windrose file format

Bring Windrose documents into your own workflows and server applications, on any platform.

Windrose.app

Drive the app from your own tools with the windrose:// URL scheme.

Extension API reference

Browse every class and method in the Windrose JavaScript API.

Getting started

Run a script

Try the Windrose JavaScript API now, directly inside Windrose. The code below prints a message at the bottom of your document window saying Hello Windrose 👋.

  1. Open a new or existing file in Windrose
  2. Choose Run Script… from the Extensions menu, or press control + shift + k, to bring up the code editor
  3. Paste in the code below
  4. Select Run
const windrose = require('windrose')

windrose.UI.message('Hello Windrose 👋')

Publish an extension

Use the Windrose Extension Manager wpm to publish a new extension or an update to an existing one. This adds your extension to the Windrose Extension Directory ↗ for review before it is listed on the Windrose website.

Export assets automatically

Create assets with a single command using the Windrose command-line interface windtool. Generate files for every exportable layer, slice, board or whole page, in as many resolutions as you need.

  1. Open a new file in Windrose
  2. Add a shape, or anything else, to the canvas
  3. Save the file locally, e.g. Atlas.wind on your Desktop
  4. Open Terminal and run the command below, which looks up the windtool bundled with Windrose and exports all pages of Atlas.wind

This writes an image file called Page 1.png into the same folder you ran the command in.

WINDROSE=$(mdfind kMDItemCFBundleIdentifier == 'com.oakmeadow.windrose3' | head -n 1)
"$WINDROSE/Contents/Resources/windtool/bin/windtool" export pages ~/Desktop/Atlas.wind

Not a developer? Send us an idea

If you don't write code but you know exactly what's missing, you can send us an idea and let our team and the wider community know what you'd like Windrose to do.

Or take a look at the extensions the community has already built.

We're here to help

Developer forum

Talk through extensions and third-party integrations with the people building them.

Examples

Read through 34 sample extensions written and maintained by the Windrose team.

Support

Write to us and we'll come back to you, usually inside a working day.