Skip to content
open-source word clouds for Processing
Java HTML Processing Ruby
Pull request Compare This branch is even with gh-pages.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.settings backported from java1.6 to java1.5 - should run on 1.5 JVMs now
_data Updating gh-pages for 1.0.0 release.
_layouts Update gh-pages to link to 1.0.0 for download
_posts fix link in 1.0 post
assets Move the blog over.
blog Move the blog over.
example Auto-add `void endDraw()` to each gallery skech, to save its output.
gallery Updating gh-pages for 1.0.1 release.
ideExample Strip out ASL copyright headers. The LICENSE file should suffice.
installing-wordcram Move the blog over.
javadoc Updating gh-pages for 1.0.1 release.
javascripts Move the blog over.
lib update the .jars for Processing 3
src Add WordBag, the first new WordSource.
stylesheets Move the blog over.
test/wordcram Strip out ASL copyright headers. The LICENSE file should suffice.
.classpath Remove .svn excludes from .classpath, since we're off .svn
.gitignore Add example/gallery, and a Rake task to include them in jekyll.
.project Initial Commit
.ruby-gemset Switch from .rvmrc to .ruby-version
.ruby-version bump ruby version for build tools
Gemfile Move the blog over.
Gemfile.lock Move the blog over.
LICENSE Initial Commit
NOTICE Update copyright NOTICE Update Wikipedia example to use HTTPS
RELEASENOTES.txt Add #42 bug fix to Release notes
Rakefile MERGE master into gh-pages, don't rebase it.
VERSION Bump version to 1.0.1
_config.yml Take baseurl: /WordCram out of _config.yml
build.json.example Make a build.json.example for peeps who want to build WordCram
favicon.ico Move the blog over.
favicon.png Move the blog over. Updating gh-pages for 0.6.2 release.
keybase.txt keybase.txt Add Hope I got it right!
params.json Move the blog over.
wordcram.png javadoc: added overview.html and wordcram.png; added some javadoc com…

WordCram lets you generate word clouds in Processing. It does the heavy lifting -- text analysis, collision detection -- for you, so you can focus on making your word clouds as beautiful, as revealing, or as silly as you like.

Word Cloud by

Make a Word Cloud

import wordcram.*;

// Set up the Processing sketch
size(1000, 600);

// Make a wordcram from a random wikipedia page.
new WordCram(this)
  .withColors(color(30), color(110),
              color(random(255), 240, 200))
  .sizedByWeight(5, 120)

You can control where words appear, what angle they're at, their font, their color, and how they're sized.


Installing WordCram is simple, like any standard Processing library.

How do I use this thing? Show me examples!

You can check out the tutorials and examples at You can watch WordCram in action, on OpenProcessing: popular baby names, and the U.S. Constitution.

But the best way to see WordCram in action is to install it, and look at the examples under File > Examples > Contributed Libraries > WordCram.


If you're running into problems, see the FAQ, or read the javadocs.

If a question has you stumped, and the FAQ is no help, send me a note. My email account is 'wordcram', and I use gmail.

Want a better WordCram?

WordCram is open-source under the Apache 2 license. That means you can help make it better! I try to keep the source clean so it's easy to find your way around. There's a laundry list of things to do, and it's easy to build WordCram from source.

Something went wrong with that request. Please try again.