- 404 Pages
- Adding Images, Fonts, and Files
- Browser Support
- Creating and Modifying Pages
- Create a source plugin
- Custom webpack config
- Customizing html.js
- Debugging HTML Builds
- Environment Variables
- Gatsby on Windows
- Migrating from v0 to v1
- Path Prefix
- Proxying API Requests
- Adding Markdown Pages
- Adding a List of Markdown Blog Posts
- Adding Tags and Categories to Blog Posts
- Creating Dynamically-Rendered Navigation
- Dropping Images into Static Folders
- How Gatsby Works with GitHub Pages
- Part One
- Part Two
- Part Three
- Part Four
- Recap of first half of the tutorial
- Data in Gatsby
- How Gatsby’s data layer uses GraphQL to pull data into components
- Our first GraphQL query
- Introducing GraphiQL
- Source Plugins
- Build a page with a GraphQL query
- Transformer Plugins
- Create a list of our site’s markdown files in src/pages/index.js
- Programmatically creating pages from data
Themes are collections of plugins with optional additional assets such as react components, css, and binary files e.g. images.
Themes are NPM packages.
A site can have multiple themes.
Themes can compose other themes.
User can override theme’s default options for plugins.
All theme assets are “ejectable” e.g. will be copied into the site’s source so you can modify the file directory.
You’ll type something like
gatsby eject gatsby-core-theme and then be
presented with a list of assets from which you could choose which assets to
eject. A common use case will be, install Gatsby blog theme, decide to override
the blog index page, eject it, tweak the react component.