$ account gatsbyjs
Gatsby is a React-based static site generator (SSG) that also supports server-side rendering (SSR), deferred static generation (DSG), and client-side rendering. It uses a GraphQL data layer to source and transform content from various backends (CMSs, files, APIs) via a plugin system. The build pipeline compiles React components into static HTML, CSS, and JavaScript, with webpack bundling and Babel transpilation. The architecture is a monorepo containing the core framework (`packages/gatsby`), CLI (`gatsby-cli`), dozens of first-party plugins (source, transformer, utility), adapters for deployment (e.g., Netlify), and extensive testing infrastructure (e2e, integration, benchmarks). Key entry points are the CLI commands (`develop`, `build`, `serve`) and the plugin lifecycle hooks (`sourceNodes`, `createPages`, `onRenderBody`). External dependencies include React, GraphQL, webpack, Babel, Node.js, and various CMS SDKs. The codebase is well-structured with state machines (XState), a Redux store, and a modular plugin architecture, though it contains some deprecated packages and mixed JS/TS patterns.