Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time


Download Pencil from Github or Mozilla

Checkout Pencil v3 from Evolus - But Backup Your Data First!

Documentation Status Join the chat at

A GUI prototyping tool for Firefox, GNU/Linux, OS X & Windows.



Pencil v3 is in development by Evolus, future work on this fork will be minimal.

Pencil v3 files are not backwards compatible, be sure to backup your data!

This project was originally hosted on & was abandoned around 2013. This fork was started for new development on March 13th, 2015.


Extra Stencil Collections

Additional collections are available on the Original Stencil Download Page.

Known Issues

  • The Native UI Stencil Collection does not load or export correctly, you should avoid using this Stencil Collection for now(see #602).
  • Dragging stencils onto the workspace does not work in newer version of Firefox, either use Pale Moon, Xulrunner, an older version of Firefox, or launch Pencil using firefox --app /path/to/application.ini (see #802).


You will need version 4 or higher of firefox to run Pencil as a Firefox Extension. Linux users will need version 4 or higher of either firefox, iceweasel or xulrunner, or version 25 or higher of palemoon. The Windows installer and OS X archive has everything you need built-in.


Windows, Linux, OS X & Firefox Packages are available for download from the Releases Page.

You can also install the Firefox Add-on from the Mozilla Add-on Repository.

To install the OS X package, unzip the archive and copy the folder to your Applications directory.

For specific Linux distributions:


Firefox Extension

Pencil can be installed as Firefox Extension, instead of a standalone application. To build the extension's XPI file:

cd build
./ xpi
firefox Outputs/Pencil*.xpi


cd build
./ linux
xulrunner Outputs/Linux/application.ini || firefox --app Outputs/Linux/application.ini

A Pencil-*-linux-pkg.tar.gz package will also be created. This contains Pencil nested within the directory structure that most Linux distributions expect(under /usr/share and /usr/bin) along with an executable, a desktop entry & mimetype information. This can be used for creating distribution-specific packages.


You'll need curl installed so you can pull the Windows XULRunner runtime and NSIS to compile the installer.

cd build
./ win32

This should place an installer exe in the Outputs/ folder.


You'll need curl installed to fetch the OS X XULRunner runtime.

cd build
./ mac

This will create a folder in Outputs/Mac and a compressed version in Outputs/.


To build the docs locally you'll need Sphinx along with some plugins, which are easily installable using Python's pip installer:

cd docs/
sudo pip install -r requirements.txt
make html
# Or if you want a PDF
make latexpdf

The output files will be put in /docs/build/.


You don't have to be a programmer to contribute! All feature requests & bug reports are appreciated.


  • File Bugs and Feature Requests. If you are unsure how to do this, read "Writing Good Bug Reports".
  • Reproduce Bugs – there are many issues which have not been confirmed since they were migrated from the original project. Try to reproduce the bug and state in a comment if you could reproduce it or not. State your operating system and Pencil version (example bug).
  • Report Duplicate Bugs - lots of imported bugs are duplicates and simply add noise to the issue tracker. If you notice a duplicate issue, please leave a comment on the issue & mention the issue that you think it duplicates.
  • Improve the Documentation. The files are in the docs folder and written in reStructuredText.
  • Just spread the word :)

Technical Users

  • Package Pencil for your distribution or OS.
  • Create a Stencil Collection for your favorite UI framework or improve Pencil's default offering, as described in the Stencil Developer Documentation.


  • There are many bugs to fix – if you could tackle one or two that would be great! The most important bugs have a Critical label. The stars labels are a heritage of the old google code repository: Many stars = many people interested in the bug or feature. You can also check the Milestones for issues to tackle.
  • Commenting and documenting code to ease the programming for others – most of it is currently without comments and having them would help much.

If you make changes that affect users, please update

For lots more information on getting started developing on Pencil, check out the Developer's Documentation.


This fork is released under GPLv2 like it's parent codebase.