Awesome
Pencil
Download Pencil from Github or Mozilla
A GUI prototyping tool for Firefox, GNU/Linux, OS X & Windows.
Status
Pencil v3 is in development by Evolus, future work on this fork will be minimal.
This project was originally hosted on https://code.google.com/p/evoluspencil/ & was abandoned around 2013. This fork was started for new development on March 13th, 2015.
Links
- The documentation
- The discussion forum
- The original project's homepage
- The original repository
- Downloads
Extra Stencil Collections
- Android Lollipop by Nathanielw
- Bootstrap by Nathanielw
- Bootstrap Glyph Icons by Craig-Fisk
- Material Design Icons by Nathanielw
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).
Prerequisites
You will need version 36 or higher of firefox
to run Pencil as a
Firefox Extension. Linux users will need version 36 of either firefox
,
iceweasel
or xulrunner
. The Windows installer and OS X archive
has everything you need built-in.
Install
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 Pencil.app
folder
to your Applications
directory.
For specific Linux distributions:
- Arch Linux - Available in the AUR.
- Nix/NixOS - Run
nix-env -iA pencil
. You'll need to be tracking Unstable. - openSUSE - Available in the graphics repository.
- Ubuntu - A .deb is available on the Releases Page.
Build
Firefox Extension
Pencil can be installed as Firefox Extension, instead of a standalone
application. To build the extension's XPI
file:
cd build
./build.sh xpi
firefox Outputs/Pencil*.xpi
Linux
cd build
./build.sh 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.
Windows
You'll need curl
installed so you can pull the Windows XULRunner runtime and
NSIS to compile the installer.
cd build
./build.sh win32
This should place an installer exe
in the Outputs/
folder.
OS X
You'll need curl
installed to fetch the OS X XULRunner runtime.
cd build
./build.sh mac
This will create a Pencil.app
folder in Outputs/Mac
and a compressed
version in Outputs/
.
Documentation
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/
.
Contribute
You don't have to be a programmer to contribute! All feature requests & bug reports are appreciated.
Users
- 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.
Developers
- 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 CHANGELOG.md
.
For lots more information on getting started developing on Pencil, check out the Developer's Documentation.
License
This fork is released under GPLv2 like it's parent codebase.