CompressedStaticFiles.AspNetCore 1.0.1

.NET 6.0
Suggested Alternatives

CompressedStaticFiles.AspNet

The owner has unlisted this package. This could mean that the package is deprecated, has security vulnerabilities or shouldn't be used anymore.
dotnet add package CompressedStaticFiles.AspNetCore --version 1.0.1
NuGet\Install-Package CompressedStaticFiles.AspNetCore -Version 1.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CompressedStaticFiles.AspNetCore" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add CompressedStaticFiles.AspNetCore --version 1.0.1
#r "nuget: CompressedStaticFiles.AspNetCore, 1.0.1"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install CompressedStaticFiles.AspNetCore as a Cake Addin
#addin nuget:?package=CompressedStaticFiles.AspNetCore&version=1.0.1

// Install CompressedStaticFiles.AspNetCore as a Cake Tool
#tool nuget:?package=CompressedStaticFiles.AspNetCore&version=1.0.1

CompressedStaticFiles.AspNet


NuGet version NuGet version NuGet downloads


GitHub license GitHub issues GitHub forks GitHub stars GitHub stars


GithubActionsMainPublish GithubActionsDevelop


Table of Contents

About The Project

This project allows you to serve precompressed files to the browser without having to compress on demand, this is achieved by compressing/encoding your content at build time.

Getting Started

Precompress content

Static nonimage files have to be precompressed using Gzip and/or Brotli, see the example CompressedStaticFiles.csproj for an automated methodology for producing compressed css & js files. The files must have the exact same filename as the source + .br or .gzip (index.html would be index.html.br for the Brotli version).

Encode images

Modern browsers support new image formats like webp and avif they can store more pixels per byte. You can convert your images using the following tools webp and libavif. The files must have the same filename as the source but with a new file extension (image.jpg would be image.webp for the webp version).

ASP.NET

Add AddCompressedStaticFiles() in your Startup.ConfigureServices() method. Replace UseStaticFiles(); with UseCompressedStaticFiles(); in Startup.Configure(). By default CompressedStaticFiles is configured to allow slightly larger files for some image formats as they can store more pixels per byte, this can be disabled by calling CompressedStaticFileOptions.RemoveImageSubstitutionCostRatio().

Example

An example can be found in the Example directory. By using this package the Lighthouse mobile performance went from 76 to 98 and the transferred size went from 526 kb to 141 kb.

Acknowledgements

This solution is developed from a clone of AnderssonPeter/CompressedStaticFiles, which was based upon work by @neyromant from the following issue ASP.NET Issue #1584.

We built this cloned project because:

  • We wanted to update to the currently supported version of .NET;
  • To make some refinements that were to our taste; and
  • To add MSBuild code to the example CSPROJ file to build Brotli and Gzip compressed CSS and JS files, using a method contributed by SQL-MisterMagoo.
Product Versions
.NET net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.
  • net6.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated