Unit 07 · lesson
What Plugins Add to the Build
A plugin extends Jekyll's build behavior without requiring you to modify Jekyll core.
That is powerful.
It also means the build can now execute code and behavior that did not exist in the base generator.
Plugin boundary
The Jekyll plugin documentation describes extension points for creating custom generated content and other build behavior.
A plugin can participate in areas such as:
- generators;
- converters;
- commands;
- Liquid tags;
- Liquid filters;
- hooks.
Compare with a theme
A theme primarily packages presentation/source defaults and may declare plugins.
A plugin can change what the build can do.
Example conceptual difference:
THEME
supplies layout / includes / styles
PLUGIN
adds build-time behavior / generator / tag / filter / hook
They can overlap through dependency relationships, but they are not the same abstraction.
Why plugins need more scrutiny
Adding a plugin can affect:
- build dependencies;
- portability;
- hosting compatibility;
- security/update surface;
- build time;
- generated output;
- required configuration.
A student portfolio probably does not need a plugin to solve every tiny formatting problem.
Inspect one candidate
Choose one well-documented Jekyll plugin relevant to publishing, such as a sitemap/feed/SEO helper supported by your intended deployment path.
Do not install it yet.
Record:
Problem it solves:
What build behavior it adds:
Dependency:
Configuration:
Generated output:
Hosting compatibility question:
Can current Jekyll/Liquid solve this without a plugin?
Checkpoint
Explain why "there is a plugin for it" is not yet a reason to add the dependency.