No description
Find a file
Alex Castle af9d92207e
Use SVG blur technique for raw layout images (#37022)
This PR switches to using an SVG filter for blurring placeholder images, rather than a CSS filter. It's based on the technique described in @cramforce's [blog post](https://www.industrialempathy.com/posts/image-optimizations/#blurry-placeholder).

One change I made to @cramforce's version was to increase the stdDeviation property of the SVG (which controls the gaussian blur strength) from .5 to 50. Smaller values than this tended to look bad, as our technique for generating the blurry placeholder image tends to produce images with sharp contrast between the pixels, which looks bad when blown up unless it's blurred by a substantial amount.

This PR currently only affects the experimental `layout="raw"` but I expect to eventually apply it to all images. CC: @styfle @kara
2022-06-17 21:16:20 +00:00
.github Update to use latest version of pnpm (#37794) 2022-06-17 12:36:37 -05:00
.vscode Additional bench tracing improvements (#29325) 2021-09-27 12:57:37 +02:00
bench Update of @babel/core (#37145) 2022-05-31 01:00:12 +00:00
docs Add images.unoptimized: true for easy next export (#37698) 2022-06-16 20:20:17 +00:00
errors Update 4MB API Routes warning error guide. (#37779) 2022-06-16 21:59:54 +00:00
examples fix: markdown format for the blog-starter example (#37792) 2022-06-17 17:06:22 +00:00
packages Use SVG blur technique for raw layout images (#37022) 2022-06-17 21:16:20 +00:00
scripts Ensure check-precompiled exits correctly on failure (#37592) 2022-06-09 10:09:18 -05:00
test Use SVG blur technique for raw layout images (#37022) 2022-06-17 21:16:20 +00:00
.alexignore Enable Alex documentation linting for docs (#26598) 2021-06-25 11:40:50 -05:00
.alexrc Add instructions to create pages directory and add an index.js file to it (#35971) 2022-04-15 14:40:37 +02:00
.eslintignore Add typedef for next-bundle-analyzer (#35075) 2022-05-22 16:32:20 -05:00
.eslintrc.json test: warn on substr() usage (#35499) 2022-03-24 18:35:33 -04:00
.gitattributes the way towards webpack 5 typings (#29105) 2021-09-21 19:17:16 +02:00
.gitignore feat(next/swc): support experimental swc plugins (#36790) 2022-05-26 15:16:26 -07:00
.npmrc declare pnpm7 as engine (#37303) 2022-05-30 13:13:36 +00:00
.prettierignore Update to leverage pnpm for monorepo (#37259) 2022-05-28 23:35:16 -05:00
.prettierignore_staged Update to leverage pnpm for monorepo (#37259) 2022-05-28 23:35:16 -05:00
.prettierrc.json Prettier trailingComma default value to es5 since 2.0 (#14391) 2020-06-22 13:25:24 +02:00
azure-pipelines.yml Update to use latest version of pnpm (#37794) 2022-06-17 12:36:37 -05:00
CODE_OF_CONDUCT.md updated code of conduct to v2.1 (#34208) 2022-02-10 18:11:42 -06:00
contributing.md Fix with mux video example (#37434) 2022-06-10 19:50:28 -05:00
jest.config.js Don't swallow test failures caused by POSIX signals (#32688) 2021-12-21 12:52:07 -06:00
lerna.json v12.1.7-canary.41 2022-06-17 10:44:25 -05:00
license.md Update license year 2022-01-13 16:02:34 +01:00
lint-staged.config.js Use Edge Runtime for running Edge Functions locally (#37024) 2022-05-30 12:01:36 +00:00
package.json Update to use latest version of pnpm (#37794) 2022-06-17 12:36:37 -05:00
plopfile.js Clarify test types during scaffolding (#34638) 2022-02-21 12:09:32 -06:00
pnpm-lock.yaml v12.1.7-canary.41 2022-06-17 10:44:25 -05:00
pnpm-workspace.yaml Update to leverage pnpm for monorepo (#37259) 2022-05-28 23:35:16 -05:00
readme.md Monorepo (#5341) 2018-10-01 01:02:10 +02:00
release.js Fix labels for release sections 2021-11-21 13:11:54 +01:00
run-tests.js Expose test timings token for e2e tests (#37756) 2022-06-16 11:56:43 -05:00
SECURITY.md Add link to security email directly. (#33358) 2022-01-15 21:33:43 -06:00
skip-docs-change.js Update repo scripts to separate folder (#26787) 2021-07-01 13:41:27 +02:00
test-file.txt Add additional file serving tests (#12479) 2020-05-04 11:58:19 -05:00
tsconfig-tsec.json Integrate tsec into the linting process (#33746) 2022-02-24 16:59:18 -08:00
tsconfig.json Ignore popstate with invalid state (#37110) 2022-05-28 20:07:44 -05:00
tsec-exemptions.json Fix various Trusted Types violations without use of policy (#34726) 2022-05-05 00:11:36 +00:00
turbo.json Update to leverage turbo for build/prepublish (#37280) 2022-05-30 19:05:27 -05:00
UPGRADING.md Move upgrading guide to /docs (#10727) 2020-02-28 23:46:18 +01:00
vercel.json Silence GH Comments for Preview URLs (#18766) 2020-11-03 21:59:47 +00:00

Next.js

Getting Started

Visit https://nextjs.org/learn to get started with Next.js.

Documentation

Visit https://nextjs.org/docs to view the full documentation.

Who is using Next.js?

Next.js is used by the world's leading companies. Check out the Next.js Showcase to learn more.

Community

The Next.js community can be found on GitHub Discussions, where you can ask questions, voice ideas, and share your projects.

To chat with other community members you can join the Next.js Discord.

Our Code of Conduct applies to all Next.js community channels.

Contributing

Please see our contributing.md.

Good First Issues

We have a list of good first issues that contain bugs which have a relatively limited scope. This is a great place to get started, gain experience, and get familiar with our contribution process.

Authors