Yeoman/Bower Issue: Missing bower_components directory

Posted on .

Just ran into an issue on a clean install of a Yeoman Ember project. I'm running the latest version of NPM (1.2.24 as of now), and had updated yo, bower, grunt-cli, and generator-ember before generating the new project with yo ember.

Once everything finished up (and without any changes to the code) I ran grunt server, but all I saw was a blank screen. Looking under the hood, I had multiple 404s on the page for resources in a bower_components directory that was never generated, and therefore did not exist.

Screenshot of the Chrome Dev Tools Console that shows 404s on a bower_components directory

After a bunch of digging, I found the solution buried in a comment on a GitHub issue for the Yeoman project, even though it ended up being a Bower problem. I tried deleting the ~/.bower directory with rm -rf ~/.bower, followed by a reinstall of bower packages with bower install in the original project directory. After doing that, the bower_components directory was in my app directory, and running grunt server showed the starter project as expected.

TL;DR

Delete your ~/.bower directory and run bower install again on your project.