Skip to main content
371

July 19th, 2021 × #CSS#linting#code quality

Hasty Treat - Stylelint for Linting CSS

Scott and Wes discuss Stylelint, a powerful linting tool for CSS that helps enforce code quality and consistency.

or

In this Hasty Treat, Scott and Wes talk about Stylelint, what it is and why you should use it!

Sanity - Sponsor

Sanity.io is a real-time headless CMS with a fully customizable Content Studio built in React. Get a Sanity powered site up and running in minutes at sanity.io/create. Get an awesome supercharged free developer plan on sanity.io/syntax.

Sentry - Sponsor

If you want to know what’s happening with your code, track errors and monitor performance with Sentry. Sentry’s Application Monitoring platform helps developers see performance issues, fix errors faster, and optimize their code health. Cut your time on error resolution from hours to minutes. It works with any language and integrates with dozens of other services. Syntax listeners new to Sentry can get two months for free by visiting Sentry.io and using the coupon code TASTYTREAT during sign up.

Show Notes

03:15 - What is a linter anyway? Why do you want to lint your CSS?

  • Does stylelint fix errors or just tell you errors?

04:42 - Getting setup

  • .stylelintrc
  • stylelint extension
  • Sass
  • High perf animations
  • stylelint order
  • Max nesting depth
  • Declaration strict value
{
	"extends": [
		"stylelint-config-standard",
		"stylelint-config-sass-guidelines"
	],
	"plugins": [
		"stylelint-high-performance-animation",
		"stylelint-declaration-strict-value",
		"stylelint-order"
	],
	"rules": {
		"selector-no-qualifying-type": [
			true,
			{
				"ignore": [
					"attribute"
				]
			}
		],
		"plugin/no-low-performance-animation-properties": [
			true,
			{
				"ignoreProperties": [
					"color",
					"background-color",
					"box-shadow"
				]
			}
		],
		"indentation": "tab",
		"order/order": [
			"custom-properties",
			"declarations"
		],
		"order/properties-alphabetical-order": null,
		"declaration-block-no-duplicate-custom-properties": true,
		"declaration-empty-line-before": null,
		"scale-unlimited/declaration-strict-value": [
			[
				"/color$/",
				"z-index",
				"font-size"
			]
		],
		"scss/dollar-variable-pattern": "^[a-z][a-zA-Z0-9]+$",
		"max-nesting-depth": 3,
		"selector-pseudo-class-no-unknown": null
	}
}

Tweet us your tasty treats!

Share