Gatsby allows you to bring your data from anywhere.
Probably the largest draw for Gatsby is its ability to load data from virtually any data source into a uniform data layer. A thriving ecosystem of source plugins give you the power to integrate with SaaS solutions
and third-party tools with minimal configuration and API support for adding any custom data to Gatsby’s data layer mean you’re able to build websites with a uniform developer experience no matter where the data comes
from.
This means your team doesn’t have to choose between a pleasant content management system for content managers or a pleasant workflow for developers — you can use whatever tools you like best for managing content and
developers are able to build sites with it using a modern React and GraphQL workflow.
One of the first things about Gatsby that impressed me was its plugin system. Like many other OSS tools such as webpack and Babel, much of the power of Gatsby is provided by plugins. And that's a good thing. Its
plugin architecture allows for incredibly deep integrations into almost every aspect of Gatsby: build configuration, data extraction and transformation, the build process, the browser at runtime, etc. This system has
allowed not only the core Gatsby team to create powerful plugins, but the community to create equally powerful plugins as well. If there's a task you're looking to accomplish with Gatsby, odds are there is already a
plugin for it. And if not, there's plenty of documentation to help you get started writing one.
What is Gatsby, why is it popular, and how its different than other tools that are similiar.
With any website, one needs to have data/content injected into markup to generate HTML. With static site generators, this usually involves writing Markdown files adjacent to template files that get merged together in
some way at build time. Gatsby takes a different approach by providing a data fetching abstraction layer between your data/content and your templates. This brings about a huge paradigm shift both in how data is
accessed in the templates as well as from where data can be pulled.
With Gatsby, the entirety of your site's data is accessed via a local GraphQL API. If you've never worked with GraphQL before, that's okay; Gatsby's docs
walk you through the process.