Update the IDA cookiecutter repo to support front end best practices

Description

We've learned a lot about managing front end development in IDAs with the ORA staff grading work, so we would like to make it easier for future IDAs to see the same benefits. The cookiecutter tool is a one-shot process to create the initial file layout of a new repo:

https://github.com/edx/cookiecutter-django-ida

It is currently focused around Django, so we would like to extend it to optionally create front end aspects too.

It probably makes the most sense to pick up this story around the time we want to create our next front end IDA (e.g. for the discussion redesign), and then use the creation of the new repo as a way to debug the cookiecutter templates.

Acceptance Criteria

  • Introduce a parameter to optionally add front end support to the repo

  • Add some or all of the following:

    • Add Karma, Jasmine, and the associated Karma plugins that we are using in ORA2

    • Add bower and gulp

    • Add the UI Toolkit

    • Add a .jshintrc and a lint task

    • Add js_test and js_test_debug tasks

  • Update the README with details as to how to use all of these

  • Create a simple "Hello World" front end app so that there are example Jasmine/Bok Choy tests

  • Update the skeleton documentation so that it describes all of these features

FYI:

Steps to Reproduce

None

Current Behavior

None

Expected Behavior

None

Reason for Variance

None

Release Notes

None

User Impact Summary

None

Status

Assignee

Unassigned

Reporter

Andy Armstrong

Reach

None

Impact

None

Platform Area

None

Customer

None

Partner Manager

None

URL

None

Contributor Name

None

Groups with Read-Only Access

None

Actual Points

None

Category of Work

None

Platform Map Area (Levels 1 & 2)

None

Platform Map Area (Levels 3 & 4)

None

Story Points

3

Priority

CAT-3
Configure