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.

@doctyper
Copy link

doctyper commented Feb 9, 2012

  • Boilerplate should be updatable via Jake task.
  • Boilerplate modules should also be updatable with a similar flow.
  • Nit: Should jake tasks have a *.jake file extension for clarity? Will node interpret files ending in .jake?
  • Nit: Better commit messages.
  • What to do about what we now call "modules"? Ideally we'd import them similar to rosy/caboose/minion.
  • We should also keep Django Start in mind. The RBP needs to interoperate seamlessly as a standalone boilerplate and a component of Django Start.

@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