Skip to content
huerlisi edited this page Jun 15, 2011 · 29 revisions

Prawn is a pure Ruby PDF generation library that aims to make low level PDF generation tasks easy. It is currently under active development, and could be considered somewhere between alpha and beta quality software. You might be able to use it in production, but then again, you might not. If that doesn’t deter you, and you’re willing to roll up your sleeves to help fill in the gaps, read on.

Getting Started

A good way to see actual code and what it produces, check out the self-documenting manual

Prawn has a lot of examples available for you to try out. These are split out by package, see prawn-core for most core functionality, prawn-layout for tables and grid based layout helpers, and prawn-security for password protection and encryption. Although these examples are mainly designed to test our featureset rather than solve practical problems, you’ll get a good sense of what Prawn can do by looking through them. If the examples seem to cover most of your needs, there is a good chance that Prawn will work out for you.

After you’ve successfully read through and run some examples (either via git or Rubygems), you’ll want to read out project roadmap. This document explains a lot of the finer points of how we run the project, and will help you decide what versions of Prawn you should be using in your projects.

Once you’ve done these two things, you’ll be ready to start hacking on your first Prawn project. We wish you luck, and will be happy to help when you run into problems.

Keeping Track of Changes.

Prawn changes rapidly, and API compatibility may break on every major release. Though this is described in detail in the roadmap, the short story is that you’re expected to read the CHANGELOG on every new release, large or small.

If you are looking for more real-time info, you should keep an eye on the Prawn mailing list, and watch us here on Github. We do not have an official policy about notifying users of breaking changes on the bleeding edge, but you’re welcome to ask questions as you see new things shaping up.

Reporting Issues

Please use our bug trackers, here on github.

More Documentation Coming (Soon?)

We will continue to update end user documentation as the project progresses. We’d definitely appreciate help with this though, so if you want to participate in documenting Prawn in any way you’d like, let us know.

Clone this wiki locally