Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Red-optimized HTML5 Boilerplate

This branch is 1343 commits behind ff0000:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
project
resources
.gitattributes
.gitignore
LICENSE.txt
README.md
grunt.js
package.json

README.md

RED Boilerplate

RED Interactive's boilerplate to initialize common projects.

Features

  • Modular hierarchy.
  • Auto-renaming of project variables.
  • Support for both Django-based and static-based projects.

Requirements

  • node 0.8.4+
    • brew update && brew upgrade node
  • npm 1.1.45+
    • npm update npm -g
  • grunt 0.3.11+
    • npm install grunt -g

How to use

Creating a project

Using the rbp NPM module

npm install rbp -g
rbp new sampleProjectName

Standalone

git clone https://github.com/ff0000/red-boilerplate.git
grunt start

Usage

Run grunt --help for a list of available tasks.

grunt start

Initialize the project. This is required before running any other task. The task will ask for:

  • Your project's title
  • Your project's namespace
  • A list of available plugins to install

grunt install

Install a plugin after project initialization. Use via grunt install:plugin

grunt build

Builds your project. Functionality varies based on installed plugins.

grunt watch

Watch your project for file changes. Functionality varies based on installed plugins.

Available plugins

  • Caboose - RED Interactive's internal SASS + Compass framework
  • JSHint - Lint your JavaScript with JSLint
  • RED Start - Easy creation of Django projects and applications based the layout used at RED Interactive Agency.
  • Rosy - An inheritable / extendable JavaScript framework.
  • Statix - Statix is a static website generator.

Creating a plugin

You must create a plugin branch in order to add a plugin to RBP. The plugin branch contains a required package.json file, along with any RBP-specific files that are not part of your plugin's git repository.

Note that you do not have to target a git repository. Plugins can be self-contained within the plugin branch itself. It's an option you should use if it makes more semantic sense than creating a new git repository.

Check out this repository, then:

git checkout --orphan plugins/sample-plugin-name
git rm -rf .

package.json

Each plugin must include its own package.json file. RBP will read through the parameters and perform the appropriate steps to import the plugin. For reference, take a look at Caboose's package.json.

common parameters

  • repository (optional): An object containing the repo type, the target branch and the repo url.
  • dependencies (optional): An object containing any npm dependencies.
  • scripts.install (optional): A parameter containing any scripts to run on plugin install
  • config.scope (optional): A parameter to scope your plugin to a specified directory.
Something went wrong with that request. Please try again.