Skip to content

Minimal, JavaScript / CSS / HTML project springboard with Closure Compiler / YUI Compressor / JSDoc ANT build file and simple MVC template

Notifications You must be signed in to change notification settings

findzen/Springboard

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Springboard

Springboard is an ultra minimal JavaScript / CSS and HTML project springboard.

It features a useful ANT build file which can:

  • Refactor template files to match your project and namespace
  • Compile JavaScript using the Google Closure Compiler
  • Minify CSS using the YUI Compressor
  • Generate JavaScript documentation using the JSDoc Toolkit
  • Sanitize HTML and inject variables at compile time

Also included is a simple JavaScript Model-View-Controller (MVC) template (based on Alex Netkachov's) which can optionally be used as a basis for your project.

Quick Setup

To get started, first clone the repository:

cd /your/workspace
git clone [email protected]:findzen/Springboard.git YourProjectName

Run the setup task and enter your project's namespace when prompted:

cd YourProjectName
ant setup
Enter the full project namespace for this project: com.domain.project

This will refactor the project template to match your namespace. You'll then be given the option to delete the GIT metadata and disconnect from the Springboard repository...

###Now Start Coding!

Code is combined and compiled / minified using blocks. For example, the following block will compile the contained scripts into a single file (defined in build.properties) and compile using Closure Compiler. The build script will then replace this block with a reference to the compiled file.

<!--[BEGIN:JS:SRC]-->
<script src="js/plugins.js"></script>
<script src="js/namespace.js"></script>
<script src="js/namespace.Event.js"></script>
<script src="js/namespace.project.Controller.js"></script>
<script src="js/namespace.project.Model.js"></script>
<script src="js/namespace.project.View.js"></script>
<script src="js/namespace.project.App.js"></script>
<!--[END]-->

Scripts and styles embedded outside of blocks will remain untouched to add flexibility, whilst all blocks of the same type in different pages will intelligently be compiled together.

Springboard supports blocks for both third party libraries and project source files in CSS and JavaScript. Libraries used by your project are combined to reduce HTTP requests but not minfied, whereas project source files are.

Springboard uses externs to manage compiled code dependancies and ships with externs for JQuery 1.7.1. Externs for other libraries can be generated using Closure Compiler Externs Extractor.

###Building with ANT

Aside from the setup task, the two main ANT tasks used by Springboard are build and jsdoc.

To compile your project, run build:

ant build

To generate JavaScript documentation, run jsdoc:

ant jsdoc

About

Minimal, JavaScript / CSS / HTML project springboard with Closure Compiler / YUI Compressor / JSDoc ANT build file and simple MVC template

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.7%
  • Other 1.3%