The first sample is the "low end" of Couch Potato usage. It totally works but you leave some value on the table. It's meant to shadow angular-seed and to demonstrate the variety of components that *can* be lazy-loaded. It does not follow the recommended source code layout (semantic), instead it follows the angular-seed layout (directories for controllers, partials, etc.). If you're building a big app -- which, of course, is one of the reasons to use Couch Potato -- then you should consider following the techniques in the second sample.