Build Status GitHub version NPM version Dependencies


A library for writing strongly typed javascript and solid classical oop. Also for making your applications, components, and libraries more concise.

Not meant to replace popular libraries like Backbone, Underscore, or Jquery etc.. Only meant as a supplement to them or as a supplement to applications requiring quick ramp up.


Api for current version:

  • [6.2.x] (

Docs for previous versions:

  • [6.1.x] (
  • [6.0.x (under construction)] (
  • [5.6.34 (view readme in branch)] (
  • [5.0.x (view readme in branch)] (
  • [0.5.x (view readme in branch)] (

Sections in Readme:

Getting Started:

Include either the full library './sjl[.min].js' or the minimal version './sjl-minimal[.min].js' (the minimal version only includes the core and no classes or constructors from it's other packages).

Unit Tests:

To run unit tests:

1.) First do an npm install in project root.

2.) For running tests with node: Run one of the following from your terminal:

  • $ gulp tests,
  • $ mocha tests/for-server, or
  • $ npm tests

3.) For running tests in the browser:

  • Launch './tests/for-browser/index.html'
  • Note npm install has to be run prior to running the aforementioned file.
  • Alternately You can check the tests for this version of the library here: [6.2.x] ( [6.1.x] ( [6.0.x] ( [5.6.34] ( [5.6.0] ( [0.5.18] ( [0.5.17] ( [0.5.15] (


  • Javascript versions ecmascript 5+

Supported Platforms:


  • IE9+, and all other modern day browsers.


  • 4.0.0+


MVP for 6.1.0

  • [X] - @todo Include all sub items for components included as sub nav in readme. All docs will now be included in api docs instead (generated with jsdocs).
  • [X] - @todo Cleanup all jsdocs and ensure all library members are listed there and showing their docs properly/clearly.
  • [ ] - @todo Ensure all existing constructors and library members have a test file for theirselves.