A library for managing CSS & JavaScript dependencies and optimization in ASP.Net
Clone or download
Latest commit d353cc1 Sep 20, 2018
Permalink
Failed to load latest commit information.
ClientDependency.Coffee Fixing up the build Sep 12, 2018
ClientDependency.Core fixes cast in net35 Sep 20, 2018
ClientDependency.Less Fixing up the build Sep 12, 2018
ClientDependency.Mvc Fixing up the build Sep 12, 2018
ClientDependency.SASS Fixing up the build Sep 12, 2018
ClientDependency.TypeScript Fixing up the build Sep 12, 2018
ClientDependency.UnitTests Fixing up the build Sep 12, 2018
ClientDependency.Web.Test Fixing up the build Sep 12, 2018
DLLs Updated Rhino mocks to nuget and fixed unit test Mar 16, 2013
Umbraco4.ClientDependency Standardized folder names in proj. Jan 15, 2012
build Updates core proj and build to support an old net35 build and output … Sep 20, 2018
packages Adds TypeScript support Apr 26, 2013
.gitignore Fixing up the build Sep 12, 2018
.hgignore updated ignore Mar 16, 2013
.hgtags Added tag 1.3.1.0 for changeset adbebb7734bc Apr 4, 2011
Build-Release.ps1 Updates core proj and build to support an old net35 build and output … Sep 20, 2018
ClientDependency.6.5.TeamCity.user Standardized folder names in proj. Jan 15, 2012
ClientDependency.sln Updates core proj and build to support an old net35 build and output … Sep 20, 2018
ClientDependency.sln.docstates Standardized folder names in proj. Jan 15, 2012
ClientDependencyLogo.png adding readme Apr 16, 2013
README.md update readme Jan 8, 2018
SolutionInfo.cs Fixing up the build Sep 12, 2018
UpgradingUmbraco.txt Updates Nuget build script and creates 1.5.0 Jun 1, 2012
scaffolding.config added file Jun 24, 2012

README.md

Build status

ClientDependency Framework

What is ClientDependency Framework (CDF) ?

CDF is a framework for managing CSS & JavaScript dependencies and optimizations for your web application. It allows for each individual component in your web application to declare what CSS and JavaScript files they require instead of relying on a single master page to include all dependencies for all modules. It also manages runtime optimizations: minification, compression, caching, and so on....

This hugely simplifies collaborative development since any developer who is working on a component doesn't need to worry about what CSS/JavaScript is being included on the main page. CDF will automagically wire everything up, ensure that your dependencies are ordered correctly, that there are no duplicates and render your CSS and JavaScript html tags properly on to the rendering page.

CDF is flexible. It allows you to make any web component dependent on any CSS or JavaScript file individually. CDF does not require you to pre-define resources at startup (but you certainly can) and doesn't require you to know c# or VB. If you can write markup for Webforms or Razor then you can use CDF.

Out of the box you get

  • MVC support - Any view engine
  • Webforms support
  • Runtime dependency resolution
  • Pre-defined bundling
  • Combining, compressing & minifying output
  • Support for external/CDN files
  • Debug and release mode rendering
  • OutputCaching of the combined files
  • Persisting the combined composite files for increased performance when applications restart or when the Cache expires
  • Versioning the files ... great for ensuring your clients' browser cache is cleared!
  • Prioritizing dependencies
  • Pre-defined file paths - great for theming!
  • Detecting script and styles that are not explicitly registered with CDF and have the output compressed
  • Provider Model so you can choose how you would like your JS and CSS files rendered, combined, compressed & minified
  • MIME type compression output for things like JSON services, or anything you want
  • Control over how composite file URLs are structured if you need a custom format
  • Medium trust compatible (Core, MVC and .Less projects)
  • Native .Less, TypeScript, SASS & CoffeeScript support

Nuget

PM> Install-Package ClientDependency

PM> Install-Package ClientDependency-Mvc

PM> Install-Package ClientDependency-Less

PM> Install-Package ClientDependency-TypeScript

PM> Install-Package ClientDependency-Sass

PM> Install-Package ClientDependency-Coffee

Documentation

Click the link to see the documentation on how to get started and more advanced techniques

Releases

Shows information about all CDF releases

Copyright & Licence

© 2018 by Shannon Deminick

This is free software and is licensed under the Microsoft Public License (Ms-PL)