Lzwjs is a project mainly written in PYTHON and JAVASCRIPT, it's free.
lzwjs
Self-deflating Javascript, written in Python and Javascript.
Usage:
python lzwjs.py < [js file] > [packed js file]
Some tests:
python lzwjs.py < prototype-min.js > test.js
>> 29756B ..encypt.. 11931 codes, 18961B ..pack.. 25284B
>> ratio: 0.849711
How it works:
lzwjs.py accepts ASCII-encodable data on stdin, which it
compresses using variable-width LZW, then converts to
ASCII-encodable base64. A script is written to stdout which
decodes and decompresses the data, then eval()s it.