Welcome to the HTML 5 Boilerplated Optimized ASP.NET MVC 3.01 Web App (clean)

This Visual Studio project is based upon the clean HTML 5 boilerplate solution found at http://html5boilerplate.com. This is not the first html5boilerplate.com based Visual Studio 2010 template to be produced, but as of this initial submission the other solutions focus on OpenID support rather than solely on purity and automated optimization. Other features such as OpenID can be added from NuGet, etc.

A few changes were made to the html5boilerplate.com solution in producing this template in order to make this as clean and pragmatic for a .NET developer as possible. As html5boilerplate.com's solution utilizes Java-based tools for optimization, including:

... this implementation instead uses a post-build batch file (see post-build.bat) and Microsoft's Ajax Minifier which is included in the Tools directory. Should you choose to instead revert back to YUI Compressor or some other minifier tool (I might recommend Google Closure Compiler instead) you can feel free to modify the post-build.bat file to suit your preferences, including perhaps downloading and adding the html5boilerplate.com tools directory with its ant build.xml script, but of course any changes to the post-build script will require that you set up all dependencies and environment configurations as needed.

Some key things to point out:

  1. Observe Scripts/app.js. This should be your application client-side script file. If you want to rename this file, or if you wish to add additional application logic scripts, you should update the post-build.bat file to reflect the file changes.
  2.  Take a look at Views/Shared/_Layout.cshtml, which acquired the bulk of html5boilerplate.com's index.html markup (plus added ASP.NET MVC 3 Razor semantics).
  3. Take a look at Views/Home/Index.cshtml.
  4. Due to the absence of proper documentation on how to use IVsPackageInstaller to invoke NuGet to install the MVC 3 Refresh dependency packages, you will need to install these packages manually if you wish them to be NuGet-managed.
  5. Entity Framework 4.1 is not referenced at all, so you will have to manually NuGet-install that no matter what if you intend to use it.
  6. The post-build.bat file optimizes these files by default and/or deletes the optimized versions:
  7. The post-build.bat optimizations of .js and .css files are, by default, performed using Tools/AjaxMin.exe (Microsoft Ajax Minifier).
  8. The post-build.bat optimizations of .png files are performed using Tools/optipng.exe
  9. The default .css and .js files that are optimized are not optimized while debugging locally, and this is by design.

Alright, so have fun, and good luck.

Jon Davis <jon@jondavis.net> http://www.jondavis.net/