Awesome
Web Markup Minifier
<img src="https://raw.githubusercontent.com/Taritsyn/WebMarkupMin/master/images/WebMarkupMin_Logo.png" width="440" height="86" alt="WebMarkupMin logo" />The Web Markup Minifier (abbreviated WebMarkupMin) - a .NET library that contains a set of markup minifiers. The objective of this project is to improve the performance of web applications by reducing the size of HTML, XHTML and XML code.
WebMarkupMin absorbed the best of existing solutions from non-microsoft platforms: Juriy Zaytsev's HTML Minifier (written in JavaScript) and Sergiy Kovalchuk's HtmlCompressor (written in Java).
Minification of markup produces by removing extra whitespace, comments and redundant code (only for HTML and XHTML).
In addition, HTML and XHTML minifiers supports the minification of CSS code from style
tags and attributes, and minification of JavaScript code from script
tags, event attributes and hyperlinks with javascript:
protocol.
WebMarkupMin.Core contains built-in JavaScript minifier based on the Douglas Crockford's JSMin and built-in CSS minifier based on the Mads Kristensen's Efficient stylesheet minifier.
The above mentioned minifiers produce only the most simple minifications of CSS and JavaScript code, but you can always install additional modules that support the more powerful algorithms of minification: WebMarkupMin.MsAjax (contains minifier-adapters for the Microsoft Ajax Minifier), WebMarkupMin.Yui (contains minifier-adapters for the YUI Compressor for .NET) and WebMarkupMin.NUglify (contains minifier-adapters for the NUglify).
Also supports minification of views of popular JavaScript template engines: KnockoutJS, Kendo UI MVVM and AngularJS 1.X.
In addition, there are several modules that integrate this library into ASP.NET: WebMarkupMin.AspNet4.HttpModules (for ASP.NET 4.X and ASP.NET Web Pages), WebMarkupMin.AspNet4.Mvc (for ASP.NET MVC 3, 4 or 5), WebMarkupMin.AspNet4.WebForms (for ASP.NET Web Forms 4.X), WebMarkupMin.AspNetCore1 (for ASP.NET Core 1.X), WebMarkupMin.AspNetCore2 (for ASP.NET Core 2.X), WebMarkupMin.AspNetCore3 (for ASP.NET Core 3.1+), WebMarkupMin.AspNetCore5 (for ASP.NET Core 5.X), WebMarkupMin.AspNetCore6 (for ASP.NET Core 6), WebMarkupMin.AspNetCore7 (for ASP.NET Core 7) and WebMarkupMin.AspNetCore8 (for ASP.NET Core 8).
You can try WebMarkupMin in action and experiment with different minification settings live on the WebMarkupMin Online site.
NuGet Packages
Core
- WebMarkupMin: Core (supports .NET Framework 4.0 Client, .NET Framework 4.5, .NET Standard 1.3, .NET Standard 2.0 and .NET Standard 2.1)
External JS and CSS minifiers
- WebMarkupMin: MS Ajax (supports .NET Framework 4.0 Client, .NET Framework 4.5 and .NET Standard 2.0)
- WebMarkupMin: YUI (supports .NET Framework 4.5.2 and .NET Standard 2.0)
- WebMarkupMin: NUglify (supports .NET Framework 4.0 Client, .NET Framework 4.5, .NET Standard 1.3 and .NET Standard 2.0)
ASP.NET Extensions
- WebMarkupMin: ASP.NET 4.X HTTP modules (supports .NET Framework 4.0 and .NET Framework 4.5)
- WebMarkupMin: ASP.NET 4.X MVC (supports .NET Framework 4.0 and .NET Framework 4.5)
- WebMarkupMin: ASP.NET 4.X Web Forms (supports .NET Framework 4.0 and .NET Framework 4.5)
- WebMarkupMin: ASP.NET Core 1.X (supports .NET Framework 4.5.1 and .NET Standard 1.3)
- WebMarkupMin: ASP.NET Core 2.X (supports .NET Standard 2.0)
- WebMarkupMin: ASP.NET Core 3.X (supports .NET Core App 3.1)
- WebMarkupMin: ASP.NET Core 5.X (supports .NET 5.0)
- WebMarkupMin: ASP.NET Core 6 (supports .NET 6)
- WebMarkupMin: ASP.NET Core 7 (supports .NET 7)
- WebMarkupMin: ASP.NET Core 8 (supports .NET 8)
- WebMarkupMin: Brotli for ASP.NET (supports .NET Framework 4.0, .NET Framework 4.5, .NET Standard 1.3, .NET Standard 2.0, .NET Standard 2.1, .NET 6 and .NET 7)
Unofficial modules
- Syku.WebMarkupMin.Config (supports .NET Standard 2.0) by Michał Sykutera
- WebMarkupMin.Brotli (supports .NET Standard 1.3) by Michał Sykutera
Requires NuGet Package Manager version 2.8.6 or higher.
Documentation
Documentation is located on the wiki of this Repo.
Previous Versions
Source code and documentation for previous versions of WebMarkupMin are located on CodePlex. If you have used old versions of WebMarkupMin, then I recommend to first read “How to upgrade applications to version 2.X” section of the documentation.
Who's Using WebMarkupMin
If you use WebMarkupMin in some project, please send me a message so I can include it in this list:
Software
- AngularTemplates.Compile by Vadim Ivanou
- AspNetStatic
- Blog-Umbraco by Ernesto Chavez Sanchez
- Colorful.Cache.Web
- Colorful.CMS.Core
- Constellation.Foundation.Mvc by Rick Cabral
- Constellation.Sitecore.Presentation.Mvc by Rick Cabral
- Elect AspNetCore Useful Middlewares by Top Nguyen
- FAV Rocks by Bill Boga
- File Sharing Application by Artur N
- GeeksCoreLibrary
- Google Pagespeed Tools for NopCommerce by FoxNetSoft
- GrandNode
- iTEAMConsulting.FormHandler
- Karambolo.AspNetCore.Bundling.WebMarkupMin
- Lightweight NetCore MVC Template by Pablo Morelli
- MiniBlog by Mads Kristensen
- Miniblog.Core by Mads Kristensen
- MissingCode.Umbraco.HtmlMinifier by Yakov Lebski
- nopCommerce
- Razor Minification by Luke Latham
- StaticWebHelper by Mads Kristensen
- Statiq Framework (formerly known as Wyam)
- Web Essentials 2013 by Mads Kristensen
Websites
- 101Sport.net
- ActivaERP.com
- Adiban.ac.ir
- Aebis.com
- AgroCountry.com
- ASFINAG.at
- AspCore.net
- ASP-MVC.ir
- Assist2Sell.com by Christopher Dengler
- Astalegale.Net
- AsteImmobili.it
- Aztual.es
- BaseballAmerica.com
- BeautifyCode.net by Anghel Valentin
- BillerudKorsnas.se
- Bridge-Direct.com
- CaixaGuissona.com
- CampingDeCarlton.nl
- Carnival.com
- ChannelEngine.com
- CityOfBoise.org
- ClientEarth.org
- CLS.vn
- CollectOffers.com
- Crossmedial.be
- DamBeton.nl
- DanTri.com.vn
- DBIS.edu.hk
- DDPlanet.ru
- Dealtoday.vn
- Dell.com
- DProtein.com
- eBarkhat.ac.ir
- ECIT.com
- e-damavandihe.ac.ir
- Elbek-Vejrup.dk
- EquitiGlobalMarkets.ae
- FCMImobiliaria.com.br
- FirmaRehberi.tv.tr
- FMOutsource.com
- FreeNetworkAnalyzer.com
- FreeSerialAnalyzer.com
- Giant-Bicycles.com
- Giant-Cambridge.co.uk
- Giant-Rutland.co.uk
- GoGetIt.com.pa
- GreatLittleBreaks.com
- Guide.DStv.com
- GurkanTuna.com by Gürkan Tuna
- HAS.nl
- HHDSoftware.com
- HiHoliday.ir
- HometownBanks.com
- HotelMedusa.eu
- HotelVirgilio.it
- HousingNow.com by Christopher Dengler
- HypeProxy.io
- IDcreation.be
- Immobilier.CBRE.fr
- ImoRadar24.ro
- inCONCRETO.net
- INGENIO-WEB.it
- Insights.com
- Instat.gov.al
- Intuitive.gg
- ItaliaOggi.it
- KamKan.ru
- KCEBV.nl
- KeyToSteel.com
- Kleisma.com
- KnaufLaw.com
- KonyaSeker.com.tr
- LeOrchidee.it
- LiderGD.com
- Liv-Cycling.com
- Logix.dk
- LogixSuite.it
- Macingo.com
- MaiLinhExpress.vn
- MALL.TV
- Medivir.se
- Mini-ielts.com
- mishlohim.co.il
- Momentum-Biking.com
- MottMac.com
- Moulsford.com
- Multicare.org.uk
- Nilfisk.com
- NimbusItSolutions.com
- NOA.nl
- noihoidonganh.com
- NVB.nl
- NYAS.org
- OGMods.net
- Oldflix.com.br
- OOS.SDU.edu.tr
- OXXOshop.com
- ParizanSanat.com
- Partners.1Gl.ru
- PatientAccess.com
- PAVIMENTI-WEB.it
- PaxinasGalegas.es
- Permira.com
- PisoTermico.com.br
- PlanetaKoles.ru
- PortaleAste.com
- PortRegis.com
- PositiveCoach.org
- PostRandomonium.com
- PranaCrystals.com
- PrepSpotLight.tv
- RAKS.com.tr
- Randommer.io by Anghel Valentin
- raovat49.com
- RattiAuto.it
- RecelInteractive.com
- RefrigerationDiscount.co.uk
- research.ox.ac.uk
- RevelDigital.com
- RewardPay.com
- RosKvartal.ru
- RystadEnergy.com
- Sazas.nl
- ScholenOpDeKaart.nl
- Seek4Cars.net
- Shooger.com
- SkillGamesBoard.com
- SleepersInSeattle.com
- Songtradr.com
- SpazioAste.it
- Sports.NDTV.com
- Sublet.com
- Sway.Office.com
- SwedishMatch.com
- Synaeda.nl
- SynapseNet.ru
- Together.bg
- Toy.co.uk
- TrailerRentals.com.au
- Tritac.com
- UK.tonzo.com by Yasin Kultur
- USdirectory.com
- vbr.ru
- VegaITSourcing.rs
- Vesteda.com
- VGSupply.com
- VolareSystems.com
- WhoCalled.co.uk
- XemLichAm.com
- YeniSafak.com
- Youvia.nl
- Zemana.com
- ZkontrolujsiAuto.cz
- Zolv.com