Truffle since release 2.0.8 delays the initialization of the global variable `web3` after the load event, so this variable is not available during angular bootstrap, inside a .config() section, inside providers and neither inside the controllers initialized at load time and related injected services. Accessing to the web3 variable inside a setTimeout() call could be a solution for simple projects but the only way to be sure that web3 is initialized is to postpone the angular bootstrap. Looks at the code below: ```html
... ... ``` Notice that there is no `ng-app` directive, the bootstrap is delegated to the small script in the body section. Notice also the `ng-cloack` directive, it avoids the rendering of the raw page template.