Skip to main content

Bower–Visual Studio 2013 Integration

I’m currently switching from NuGet to Bower as my client side package manager. The process is not going as smoothly as I hoped. During the process I got a range of problems I blogged about before.

bower

In this final post, I walk through the process of getting Bower up and running inside Visual Studio 2013.

Outside the .NET world(where NuGet is king), NPM and Bower are the 2 mainstream package managers. I don’t like NPM as it creates a deep tree of package dependencies ending up with the NTFS 260 path length issue. Bower uses a flat dependency tree, requiring only one version for each package.

Installation Steps

image

  • Similar to NuGet where we have a package.config file, we need a file (bower.json) to configure the list of packages. The easiest way to create this bower.json file is by opening up a command prompt and running the ‘bower init’ command.
    • This will walk you through a list of questions. You can use the default for everything except the ‘Would you like to mark this package as private which prevents it from being acidentally published to the registry?: (y/N)’. For that question, change the response to yes.

image

  • Include the generated bower.json file inside your project.

image

  • Let’s add some dependencies to the bower.json file. We add a new “dependencies” property and start adding dependencies. The moment you enter a few characters, Visual Studio will offer to search the Bower registry for published packages.

image

  • When I click on the Search Bower… option, a list of matching packages is shown.

image

  • Same thing when I specify a version number.

image

  • Once we are done adding our dependencies, you can right-click on the bower.json file and choose Bower install packages to download and install the configured dependencies.

image

  • Visual Studio will invoke Grunt to get the packages from the registry. By default the packages will be installed in the bower_components folder.

image

  • Now you can include the packages or even better use a Grunt or Gulp task to copy the files over to the correct folder.(but this is for another blog post).

image

Popular posts from this blog

DevToys–A swiss army knife for developers

As a developer there are a lot of small tasks you need to do as part of your coding, debugging and testing activities.  DevToys is an offline windows app that tries to help you with these tasks. Instead of using different websites you get a fully offline experience offering help for a large list of tasks. Many tools are available. Here is the current list: Converters JSON <> YAML Timestamp Number Base Cron Parser Encoders / Decoders HTML URL Base64 Text & Image GZip JWT Decoder Formatters JSON SQL XML Generators Hash (MD5, SHA1, SHA256, SHA512) UUID 1 and 4 Lorem Ipsum Checksum Text Escape / Unescape Inspector & Case Converter Regex Tester Text Comparer XML Validator Markdown Preview Graphic Color B

Help! I accidently enabled HSTS–on localhost

I ran into an issue after accidently enabling HSTS for a website on localhost. This was not an issue for the original website that was running in IIS and had a certificate configured. But when I tried to run an Angular app a little bit later on http://localhost:4200 the browser redirected me immediately to https://localhost . Whoops! That was not what I wanted in this case. To fix it, you need to go the network settings of your browser, there are available at: chrome://net-internals/#hsts edge://net-internals/#hsts brave://net-internals/#hsts Enter ‘localhost’ in the domain textbox under the Delete domain security policies section and hit Delete . That should do the trick…

Azure DevOps/ GitHub emoji

I’m really bad at remembering emoji’s. So here is cheat sheet with all emoji’s that can be used in tools that support the github emoji markdown markup: All credits go to rcaviers who created this list.