critters
penthouse
Our great sponsors
critters | penthouse | |
---|---|---|
7 | 5 | |
3,376 | 2,620 | |
1.2% | - | |
6.6 | 0.0 | |
about 2 months ago | 5 months ago | |
JavaScript | HTML | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
critters
-
Show HN: Jampack – Optimizes static websites as a post-processing step
I'm interested in the notion of identifying "critical" CSS that should be inlined rather than live in its own stylesheet.
I was hoping there was some principled way of identifying critical and non-critical CSS (e.g. user interaction effects like :hover would always be considered non-critical), but it looks like the library it's using just tries to render your page and do a best-effort detection on which rules are considered critical, which is a little unsatisfying: https://github.com/GoogleChromeLabs/critters
-
Optimize CSS with SAT Solving
https://github.com/GoogleChromeLabs/critters Might be a good starting point. It’s designed to inline the css afterward so it’s more focused on extracting used css than removing unused.
-
Critical CSS and Next.js App Directory
With the Pages dir, we had experimental support for critters. That was good enough for me
-
Remove CSS Styles and Apply Styles to All Elements
Critters does something similar but it is intended to inline only the CSS that is visible upon the page load (top of the page). There is also a Vite plugin that inlines everything that is possible to inline
-
Optimizing CSS Performance in Nuxt with Critters
// nuxt.config.js import { defineNuxtConfig } from 'nuxt' export default defineNuxtConfig({ modules: ['@nuxtjs/critters'], critters: { // Options passed directly to critters: https://github.com/GoogleChromeLabs/critters#critters-2 config: { // Default: 'media' preload: 'swap', }, }, })
-
Critical CSS? Not So Fast
I find critters[0] quite easy to work with and well worth implementing on my nextjs or Astro projects.
I build a lot of landing pages so there are very few multi page visits.
[0] https://github.com/GoogleChromeLabs/critters
-
Vue Webpack - possible to extract some CSS but not all?
Doesn't critters do this already? https://github.com/GoogleChromeLabs/critters I could be wrong though
penthouse
-
Extracting and using Critical CSS on my Eleventy site
It is a wrapper around Penthouse, the original critical path CSS generator, and performs two additional functions:
-
Critical CSS? Not So Fast
It is easy with a little automation :). In the build process, adding a step to calculate critical path css helps. This should probably be the last step and run on production post deploy. The calculated CSS is stored in redis which will be appended in the head for subsequent requests. This tool had inspired me to build this process at multiple orgs I have worked with https://github.com/pocketjoso/penthouse.
Agree on the async JS part but I guess browser makers will solve it soon.
-
What to do for website speed optimization?
inline critical css (here is a useful tool https://jonassebastianohlsson.com/criticalpathcssgenerator/) , and here an explanation (https://web.dev/extract-critical-css/).
-
CSS Deep
pocketjoso/penthouse - Generate critical css for your urls
-
Force include classes in critical CSS
Critical CSS uses as its engine penthouse which has in turn a lot of configuration options. One of them, is forceInclude.
What are some alternatives?
compression-webpack-plugin - Prepare compressed versions of assets to serve them with Content-Encoding
critical - Extract & Inline Critical-path CSS in HTML pages
critters - CSS optimization using critters for Nuxt
article-extractor - To extract main article from given URL with Node.js
webpack-assets-manifest - This webpack plugin will generate a JSON file that matches the original filename with the hashed version.
Compass - Compass is no longer actively maintained. Compass is a Stylesheet Authoring Environment that makes your website design simpler to implement and easier to maintain.
mangle-css-class-webpack-plugin - Minifies and obfuscates the class names in your existing JavaScript, CSS, and HTML without any modern css modules.
haste-perch - Create dynamic HTML easy in the browser using declarative notation
css-loaders - A collection of loading spinners animated with CSS
webpack-config-plugins - Provide best practices for webpack 4 loader configurations
Sequence - The responsive CSS animation framework for creating unique sliders, presentations, banners, and other step-based applications.