title: How to correctly manage fonts with bower / grunt
body: <p>On my project I added to my bower.json some projects that use fonts:</p>
  
  <ul>
  <li>fontawesome</li>
  <li>bootstrap</li>
  <li>roboto-fontface</li>
  </ul>
  
  <p>Grunt file was mainly generated by "yo angular" with some custom edits. Fonts work just fine in "grunt serve" development mode but don't work when I do my dist build with "grunt". </p>
  
  <p>The problem is that fonts aren't copied to my dist folder. To fix that I manually changed my Gruntfile to copy:dist all my fonts. Like this:</p>
  
  <pre><code>{
      expand: true,
      cwd: "&lt;%= yeoman.app %&gt;/bower_components/bootstrap/dist/fonts",
      dest: "&lt;%= yeoman.dist %&gt;/fonts",
      src: ["*.*"]
  }
  </code></pre>
  
  <p>My problem now is that all my libraries CSS expect the fonts to be on a specific folder ( roboto-fontface and bootstrap for example expect the font to be in different folders). </p>
  
  <p>So I'll have to change my gruntfile to replace the fonts reference on the *.css files to target the right paths. I don't know yet how to do this but my main itch is that this seems very "hacky"</p>
  
  <p>Bower works very well with my css files: they are automatically added to index.html and their href is correctly replaced when doing my dist build. For example I can upgrade my ng-grid project without problems, remove and add new projects. I believe that works because of the bower.json file on the ng-grid project that contains</p>
  
  <pre><code>  "main": ["./ng-grid.css", "./build/ng-grid.js"]
  </code></pre>
  
  <p>Grunt is correctly configured to understand that and add it to my index.html. </p>
  
  <p>But for fonts it seems the only solution is to to modify my gruntfile to add copy:dist and then some kind of regex replacement on my *css files. But, for example, the roboto-fontface project bower.json file also seems to have a good "main" where all the fonts are listed besides the css file. </p>
  
  <p>For me it seems logical that I should be able to configure my Gruntfile so that it understands that the "main" parameter has fonts and automatically copies them to my dist/ and replaces my css files with the correct path. </p>
  
  <p>When I add a new font to my project I'll have to edit my Gruntfile, also when I remove/update fonts.</p>
  
  <p>So, the question is simple: how can I best manage my project fonts? What are the best practices? How are the 'cool kids' doing it?</p>