Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Block-based Gatsby starter for Decap CMS with TailwindCSS v4, page builder, dark mode, and Netlify deployment.

Stunning animated slider website built using Next.js, Framer Motion, and Tailwind CSS.

A multilingual, clean, green 11ty starter theme.

A Gatsby boilerplate with GraphCMS headless CMS and TailwindCSS pre-configured for rapid site development.

A JavaScript starter for Next.js with ESLint, Prettier, Husky, and GitHub workflows pre-configured.

A Gatsby starter with Apollo Client, client-side routing, ESLint/Prettier, and Flex Grid components.
Gatsby Starter Henlo is a block-based Gatsby.js starter for Decap CMS that builds JAMstack websites from programmable content blocks, styled with TailwindCSS v4.
Gatsby Starter Henlo (v1.3.0) is an open-source boilerplate for Gatsby v5 and Decap CMS (formerly Netlify CMS). It takes Markdown-based content—organized into pages, blog posts, authors, and forms—and generates a static site with a page-builder architecture. The template is maintained by Clean Commit and is designed for deployment on Netlify, following the JAMstack architecture with Git as the single source of truth. It includes example pages, collections, and a fully componentized Decap CMS configuration located in the cms directory.
tailwind.config.js and styles in src/styles.cms/blocks/index.js and rendered by src/components/PageBuilder.js; adding a block requires registering it in both places.src/api for extending site behavior.gatsby-plugin-sitemap, requiring the GATSBY_APP_URL environment variable for correct URLs.cms directory instead of a single YAML file, and includes custom ID and Permalink widgets from Clean Commit./admin.PageBuilder.js.yarn deploy:prod with Netlify CLI.The template uses Decap CMS to manage content stored as Markdown files. Pages are built from a list of blocks—each block is a type defined in cms/blocks with fields like title, content, buttons, and images. When a page is saved, the content is written to content/pages, and Gatsby queries it via a shared Blocks fragment so all fields exist in the schema. For local development, run yarn dev and yarn cms (or npx decap-server) to get the admin at http://localhost:8000/admin. The project relies on a dont-remove.md example file so GraphQL type inference does not break when adding new blocks.
GATSBY_APP_URL sets the canonical URL for sitemaps and the display URL in the Decap CMS admin. It is required to run the app, and it defaults to https://example.com if not provided. You must define it in your Netlify environment before deploying for correct meta tags.
Click the "Deploy to Netlify" button in the repository to authenticate with GitHub, create a repository, and let Netlify build and deploy the site automatically. Alternatively, use Netlify CLI and run yarn deploy:prod from the local project directory.
Yes. Add a new type to cms/blocks/index.js and update the Blocks fragment in src/components/PageBuilder.js. Because Gatsby schemas are inferred, you must define the new fields in createSchemaCustomization or include them in the dont-remove.md example file to avoid build errors.
Yes, dark mode is built in, and the theme settings can be managed from the CMS settings collection. The Tailwind configuration and styles in src/styles include dark mode variants.
Node 20 is required, along with the Gatsby CLI for local development and Netlify CLI for deployment commands.
