alphagov/spotlight — pull request #425 by lennym (2014-04-29 15:39:17+00:00)
Title: Feature/services page

This still needs all of the tests, so probably isn't ready for merge just yet, but I'd like to get eyes on it sooner rather than later because it is likely to colour the path we go on in terms of client-server separation.

Note that this just uses the existing styles, and not the new designs, so there will be an additional css story to be done.

### Notes/Thoughts
* Things inside `app/server` should *always* export as commonjs (i.e. `module.exports = ...` or similar), not amd (i.e. `define([...], function (...) {...})`). They can still use `requirejs(...)` internally to load shared amd modules.
* There is probably a better way of getting templates on the server than `requirejs('tpl!server/templates/services.html')`, but I don't know what it is off the top of my head.
* The node jasmine tests overwrite Node's require, which means that anything that is currently has tests, or is used in tests has to export an amd module. This is *very* annoying. I suspect it means that we'll need to separate out tests for *new* server code.
* Probably more to come...