Skip to content
Martin Klepsch edited this page Feb 25, 2015 · 19 revisions

CLJSJS logo

CLJSJS is an effort to package Javascript libraries to be able to use them from within Clojurescript.

Why CLJSJS exists

To optimise the compiled Javascript Clojurescript utilizes the Closure compiler. The Closure compiler provides different optimization modes, the most effective one being called advanced. With advanced optimizations the compiler will munge variable names to make them take up less space. When using 3rd party code this requires you to supply a list of names that should not be changed. These lists are supplied to the compiler in the form of Extern files.

Because these Extern files are a specific requirement for using Javascript libraries with Clojurescript we can not make use of existing packages from packaging systems like NPM or Bower.

Contribute

CLJSJS is a community effort that depends on contributors to support a wide range of Javascript libraries. If you want to help there are a few things you can do:

  1. Use the packages provided by CLJSJS and report issues
  2. Watch the cljsjs/packages repo and help other users
  3. Contribute new packages. Packaging Guide
  4. Improve this wiki

Packaging

Foreign Libraries

Closure Libraries

See this discussion

CSS

Up for debate