Published 2010-08-11 00:00:00

Javascript packer in Javascript, with full scoped variable replacement


git clone;a=tree

Usage Example:

seed pack.js -o /compressed/combined.js  *.js

Example Output:


seed pack.js [OPTIONS] LIST_OF_FILES

File to output compressed javascript

File to output non-compressed file name

Cache directory (writes minified files in here)

do not clean up cache directory

File to read with a list of source paths / or class names.

prefix for translation md5 generator (directory that files are in, and is removed) from path when generating an md5 for the translated name.

keeps the white space in the output files (but does variable replacement).

generate a translation file using double quoted strings

autoBuild - puts target in INPUTDIR/compiled/MODULE-TIMESTAMP.js and turns on translation

module name used with autoBuild to force a module name.

files to be compressed.


This is part of the Javascript toolkit for seed which also includes JSDOC documentation toolkit and API documentation for Gnome seed bindings.


Loosely based off the Yahoo Compressor Java library, using the JSToolkit tokenizer code. Since I hate running Java anywhere, this is a pure Javascript solution, which in theory could be turned into an online version..

It's used primarily for the Roo javascript library building and my Pman Project components.

Performance is acceptable, I've never run any of the other compressors, but it takes around 30 seconds to do the ~170 Javascript files in Roo javascript library.

One key change that's been done is the use of a token tree which makes scope detection considerably simpler.

Recent changes include flagging IE trailing comma detection

Add Your Comment

Follow us on