Leaving aside the intended audience for our plugins, throughout our development process we've used a mix of different techniques, but with one thing in common—our plugins have very few dependencies! This is not to be sniffed at, as clearly any dependencies that change may have a resulting knock-on effect for our plugin.
This aside, there will be times when the lack of any dependencies may require more development effort than is sensible (or practical)—it is at this point where we may need to consider using additional plugins to handle some of the processing. A perfect example of this is to parse a font: statement so that we can work on the constituent elements; there are a few others that are worthy of note:
So, should we use them? It's not obligatory by any means, but they may help remove some of the effort required to create our plugin. If any are used, then it pays to keep a close note of any changes being made to the plugins, so that we can correct any issues that occur promptly; after all, no-one likes a plugin that isn't maintained properly by the developer!
Let's move on, a key part of plugin construction is consistency; the power of PostCSS allows any plugin to be created, so keeping a sense of uniformity is essential. To help with this, the developer of PostCSS has released a set of guidelines: let's dive in and take a look at these in more detail.