Skip to content
DavidSouther edited this page Nov 30, 2012 · 1 revision

Tools & Languages

grunt manages the build as whole, compiling the assets in src/ to appropriate locations in lib/, running tests, and other automated project management tasks. Tests are run written in a combination of Jasmine and Curl. Sources are mostly written in a fork of LiveScript with additional eventing operators.

Directory layout

.
├── grunt.js
├── package.json
├── README.md
├── build # Interim compiled sources
├── lib # Final compiled sources
│   └── jefri-server.js # NodeJS Include
├── src
│   ├── jefri-server.ls
│   └── node # Export wrappers
└── test
    ├── curl
    │   └── smoke.sh
    └── jasmine
        └── node
            ├── ls # Test sources
            └── spec # Compiled tests

Where do I get started with the tools?

Grunt

Running grunt in the root folder will run all the build steps and tests. Running grunt --help will list the available tasks. You'll probably want the alias tasks towards the bottom, as they handle task dependency ordering.

Livescript

Start browsing LiveScript's homepage for examples of code. Copy snippets into their compiler, or look at build output, to see what gets generated.

Express

The HTTP server uses Express for routing and other server tasks.