Welcome To JsQuickStart
|Author:||Daniel Fernandes Martins <email@example.com>|
|Company:||Destaquenet Technology Solutions|
- Very flexible Ant-based build script, customizable via properties and/or
hook targets (
-post-xxxxfor most build targets);
- Standard directory layout that keeps your code organized;
- Configurable bundle generation;
- Minification/compression with YUICompressor;
- Automatic API documentation generation with JsDoc-Toolkit;
- Easy unit testing with JsTestDriver and JsHamcrest;
- Per mode configuration;
- Built-in support for continuous integration;
- Code quality inspection with JsLint4Java;
- Cross-platform and free to use both in personal and commercial projects;
If you have already installed the required dependencies, run the following command line to display the available build targets:
$ ant -p
$ ant build
You can also run several targets in a given order:
$ ant clean min doc-api
Unit Testing And Linting
To be able to run the unit tests, first you need to start up JsTestDriver in server mode. Run on a separate console window:
$ ant test-server
Then, you need to capture one or more browser instances in which to run the tests:
$ ant test-capture
Now you are able to run the tests on the captured browser instances:
$ ant test
Also, you might want to occasionally check the source code against syntax errors and potential bugs with JsLint4Java:
$ ant lint
Continuous Integration Support
$ ant ci test
The difference between
ant test and
ant ci test is that the former
test in the default mode, and the latter runs
test in the
continuous integration mode.
JsQuickStart supports the concept of per mode configuration. Currently,
JsQuickStart provides two execution modes out of the box:
(for continuous integration).
To run one or more targets on a given mode:
$ ant [mode] [target...]
If no mode is provided, the given targets are executed in the
Description Of Contents
- Stores the build output artifacts.
- Configuration files for each execution mode. These files allow you to quickly override most build options without touching XML files.
- License files for all bundled dependencies.
- Place to store the project documentation.
- This is where the generated API documentation will be stored.
- Bundled libraries for this project.
- Libraries used by the build script, separated by programming language.
- Libraries used by the main code, separated by programming language.
- Libraries used by the test code, separated by programming language.
- Internal build scripts and configuration files. These files are not meant to be changed.
- Holds the project source code.
- Main source code.
- Unit and functional tests.
- Use this file to modify or extend the build behaviour.
- Ant-Contrib 1.0b3;
- JsDoc-Toolkit 2.3.0;
- JsHamcrest 0.6.1;
- JsLint4Java 1.3.3;
- JsTestDriver 1.2;
- YUICompressor 2.4.2;
This project is under heavy development, so things might change without any notice whatsoever.