Cast your mind back, if you will, to some advice I gave earlier about plugins—remember how I said that in an ideal world, a plugin should serve a single purpose?
Well, one might be forgiven for thinking that we're ignoring this advice when we talk about plugin packs. In reality, we're not; all of the plugin packs available for PostCSS provide a single interface for multiple single plugins. At present, the list of plugin packs include these examples:
@extend by allowing us to create rules that inherit from base rules.cssnano should be part of any developer's toolkit: this pack is perfect for compressing and optimizing code within our style sheets. You can get the plugin from https://github.com/ben-eb/cssnano.font src generation, providing fallback support for RGBA values, or the clearfix hack.These packs provide a real mix of functionality—it is naturally up to us to decide which plugins we want to use. At this point, though, one might be tempted to ask "why use a pack—surely this adds unnecessarily redundant functionality that we're trying to avoid adding?"
It's a good question, the simple answer is that it will depend on your requirements. If all we're interested in is adding vendor prefixes, then checking and compressing our code, then we would most likely use autoprefixer, cssnano, and stylelint. But if we wanted to add property aliases, then autoprefixer can be dropped in favor of using Rucksack with cssnano and stylelint. The key here, though, is to carefully assess what you need, and work out the best combination of plugins to use from the selection available for PostCSS.
Okay, time for a change: let's move on! We will be exploring some of these plugin packs over the next few pages: let's make a start with a simple plugin, in the form of postcss-short.
This plugin, available from https://github.com/jonathantneal/postcss-short, is a wrapper for several plugins available for the PostCSS ecosystem; these include Shorthand Border, Shorthand Color, and Shorthand Size. Installing the plugin is a breeze—it uses the same format as most other PostCSS plugins, and can be installed using this command within our project root area, in a Node.js command prompt session:
npm install postcss-short --save-dev
The great thing about this plugin (and other plugin packs) is that it removes the need to call lots of separate plugins. We must bear in mind though that to make this worthwhile, we need to be calling most of the plugins in some form or other. If we're only calling one or two from postcss-short, then we may prefer to call them individually, and not use the postcss-short plugin.
Leaving aside any concerns about using the plugin, let's take a look at some examples of it in action. The best way to experience it is to use the online editor at http://jonathantneal.github.io/postcss-short/. We can use this to experiment before adding the final result to our style sheet prior to compilation:

In this example (taken from the plugin site), we've used all of the plugins, with the exception of Shorthand Text and Shorthand Data. In our code, we've used the relevant shorthand as specified for the plugin—PostCSS will compile this into valid CSS styles, as outlined within each plugin.
Which plugins we use will of course depend on our requirements—there is every possibility that you will find yourselves using particular plugins more than others. Staying with the theme of shorthand, though, there is one plugin pack that is likely to feature often in your toolkit—Rucksack. No, I don't suggest this is an opportunity to go on holiday (no pun intended), but more an occasion to use what will be a very useful set of plugins within PostCSS.