From 4ab3f194cf5d6dcafcb2a75d9604aac79d963554 Mon Sep 17 00:00:00 2001 From: Kyle Gill Date: Tue, 3 Mar 2020 09:13:22 -0700 Subject: [PATCH] docs: flowchart and tables for differences between plugins, themes, and starters (#21659) * create tables to compare and a flowchart to evaluate differences in plugins, themes, starters * Apply suggestions from code review Co-Authored-By: LB * address PR feedback * adjust confusing sentence * updates to structure to reduce redundancy * Apply suggestions from code review Co-Authored-By: LB * Update docs/docs/plugins-themes-and-starters.md Co-Authored-By: LB * linting errors * Apply suggestions from code review Co-Authored-By: Aisha Blake Co-authored-by: LB Co-authored-by: Aisha Blake --- .../images/plugin-starter-theme-flowchart.png | Bin 0 -> 70546 bytes docs/docs/plugins-themes-and-starters.md | 80 ++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 docs/docs/images/plugin-starter-theme-flowchart.png diff --git a/docs/docs/images/plugin-starter-theme-flowchart.png b/docs/docs/images/plugin-starter-theme-flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..4da3f30b8e8c4a274679367e1f6a83c1ece277c7 GIT binary patch literal 70546 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 A#sB~S literal 0 HcmV?d00001 diff --git a/docs/docs/plugins-themes-and-starters.md b/docs/docs/plugins-themes-and-starters.md index 35e9161c03a6b..f2589beff0662 100644 --- a/docs/docs/plugins-themes-and-starters.md +++ b/docs/docs/plugins-themes-and-starters.md @@ -36,3 +36,83 @@ Gatsby offers [official starters](/docs/starters/#official-starters) for a defau - [Starter library](/starters/) - [Creating a starter](/docs/creating-a-starter/) - [Converting a starter to a theme](/docs/themes/converting-a-starter/) + +## Conventions for usage + +Themes are a type of plugin, making both themes and plugins capable of the same functionality. The difference between them is _intended usage_. Themes are intended to own a piece of the site (like an about us page), whereas a plugin is intended to modularize Gatsby APIs into smaller pieces. Themes tend to cover a broader scope of responsibility, packaging up multiple behaviors, where plugins are meant for more specific functionality. + +Starters are generally used as the starting point that plugins and themes are then installed into. However, they're based on one-time use and do not get updated over time as plugins and themes do. + +## Comparing differences + +Once you have a conceptual understanding of what a plugin, theme, and starter is, you may ask yourself what each is suited for in relation to each other. + +The following tables put plugins, themes, and starters side-by-side, showing what each is more appropriate for. + +**Legend** + +| Icon | Feature Capability | +| ---- | ---------------------------------------------------------------- | +| ● | Fully capable (possible and supported) | +| ◐ | Somewhat capable (support is minimal or it is not best practice) | +| ○ | Not capable | + +### Differences and considerations in maintenance + +When it comes to maintaining a Gatsby site, plugins and themes offer a distinct advantage to starters by being distributed as packages. This means making changes in multiple Gatsby sites is as easy as a new install of an updated package upstream. It's difficult to sync changes across multiple sites derived from the same starter. + +| Maintenance | Plugin | Theme | Starter | +| ------------------ | ------ | ----- | ------- | +| Versioning | ● | ● | ◐ | +| Install as Package | ● | ● | ○ | + +#### Versioning + +Starters can still be versioned inside of a repository so that you can track issues or bugs associated with specific updates, but they aren't formally released and published, so they aren't versioned like a plugin or theme is. + +#### Installing as a package + +Starters can't be installed into existing sites, this limitation was one of the motivating factors in developing the newer concept of themes. You can read more about the rationale for themes in the [What are Gatsby Themes guide](/docs/themes/what-are-gatsby-themes/#gatsby-starters). + +### Differences and considerations in configuration + +Plugins and themes can expose options to make them configurable for users. There are different possibilities for configuration like passing in options and shadowing files that make plugins and themes more powerful—but also more complicated—than starters. Because themes are also plugins, shadowing is possible in plugins as well. It may make sense for a plugin to take advantage of the shadowing API, but it is less common. + +| Configuration | Plugin | Theme | Starter | +| --------------------- | ------ | ----- | ------- | +| Pass in Options | ● | ● | ◐ | +| Shadowing | ◐ | ● | ○ | +| Uses Multiple Plugins | ◐ | ● | ● | +| Custom components | ◐ | ● | ● | + +#### Pass in Options + +Plugins and themes both allow options to be passed in when installed in the plugins array of a `gatsby-config`. Starters can be set up with documented options for customization, but there are no officially supported options for starters apart from what the author of the starter decides to write. + +#### Shadowing + +Theme [shadowing](/docs/themes/shadowing/) exists to allow users to override or otherwise extend individual components provided by a theme. For example, a plugin or theme can provide a specific path to `gatsby-config` so the plugin knows where to build pages from, but the user wouldn't be able adjust _how_ those pages are built, only from what path. Theme shadowing allows users to replace a file with their own version of it, allowing them to rewrite that logic to use the path in a different way. + +An example of a plugin that uses shadowing is [`gatsby-plugin-theme-ui`](/packages/gatsby-plugin-theme-ui/?=theme-ui#customizing-the-theme) which allows you to shadow a theme file to use in your own theme. + +Starters aren't capable of shadowing (and they don't need to be), because a user of a starter can adjust any file by editing it directly. + +#### Uses multiple plugins + +Themes are intended to abstract several plugins into one, by making a `gatsby-config` that a Gatsby site will run along with its own config. Starters can also be configured with multiple plugins so someone can get up and running without worrying about configuring too many loose ends. + +#### Custom components + +Custom components are most traditionally distributed as packages in the React ecosystem. Components don't need to hook into the Gatsby build system, so if shipped with a plugin they don't need to be included in a `gatsby-config`'s plugin array. This is the case with `gatsby-image` which is a React component. It doesn't need to be included in the plugins array because it is merely a component. + +Some plugins ship with components you can use in a Gatsby site. An example is the [`` component from `gatsby-plugin-google-analytics`](/packages/gatsby-plugin-google-analytics/?=#outboundlink-component). Other plugins, like [`gatsby-plugin-react-helmet`](/packages/gatsby-plugin-react-helmet), require you to install components from other libraries. + +Themes by convention are more suited to ship with components that could then be shadowed for customization. + +Starters will include components to render data, but they are tied to the starter. + +## Deciding which to use + +As an aid to help try and guide you to which of the 3 options is right for your use case, consider this flowchart: + +![Flowchart walking through options for plugins, starters, and themes](./images/plugin-starter-theme-flowchart.png)