Skip to content

Instantly share code, notes, and snippets.

@gigafied
Created February 8, 2012 06:24
Show Gist options
  • Save gigafied/1766037 to your computer and use it in GitHub Desktop.
Save gigafied/1766037 to your computer and use it in GitHub Desktop.
RED Boilerplate Features + Requirements

####Requirements:

  • Scalable module system. Ability to easily create and maintain modules/components for use in projects.

  • Base boilerplate simplified & stripped down to bare essentials.

  • JavaScript based. This gives any frontend dev the ability to contribute easily if they so desire.

  • Dependency management without kludging up project repos. Config files and whatnot should be checked into the repo, actual node modules or other dependencies, should not.

  • Easily configurable. All config files should live at resources/config and be named well. Ideal formats: .js (in the form of Objects) or .json.

####Features:

  • Placeholder find/replace. Mainly during project setup, the ability to replace placeholder content, with meaningful values based on user input. I.e. renaming a __namespace__ folder, or including lists of JS files.

  • Build-time templating. Allow build scripts to update templates, or specific files with generated output, i.e. a list of minified js files.

@gigafied
Copy link
Author

gigafied commented Feb 9, 2012

I agree with most of these.

Nit: Should jake tasks have a *.jake file extension for clarity? Will node interpret files ending in .jake?

They all live within the resources/tasks dir is this not enough separation? Jake namespaces are subfolders in that tasks dir, i.e. resources/tasks/build the Jakefile automatically searches the dirs/files inside tasks and namespaces them accordingly.

We can load in custom extensions via node, just not sure it's necessary in this case?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment