Next.js and GitHub integration

The AI blog writer for Next.js.

QuillGrid commits each post to your GitHub repository as a Markdown or HTML file with its cover image. Your host rebuilds on the push, and your own templates render the post.

What arrives

A commit your build already understands.

Each post is two files in your repo: the post with its frontmatter, and its cover image. Nothing else in the repo is touched.

  • One file per post

    content/blog/<slug>.md by default, or any folder you choose.

  • Standard frontmatter

    Title, excerpt, date, author, tags and cover, in YAML your templates can read.

  • Markdown or HTML body

    Markdown by default, or the sanitised HTML if your templates render HTML.

  • Cover in your repo

    Saved under public/blog/ by default and referenced from the frontmatter.

  • The branch you choose

    Commits go to main unless you pick another branch.

  • Your build does the rest

    Vercel, or any host that deploys on push, publishes the post. A redesign restyles every old post too.

Connect

Connected in three steps.

QuillGrid writes through the GitHub API, so there's nothing to install in your project.

  1. Create a GitHub token that can push to the repository. A fine-grained token with Contents: read and write is enough.
  2. Tell QuillGrid the repo, the branch, where posts and covers go, and your post URL pattern, such as /blog/{slug}.
  3. QuillGrid checks it can push, then commits each approved post.
content/blog/whatsapp-business-ai-agents-indian-smes.md
---
title: "How WhatsApp Business AI Agents Help Indian SMEs"
excerpt: "WhatsApp Business AI agents help Indian SMEs capture leads…"
date: "2026-09-16"
tags: ["WhatsApp Business AI agents", "AI lead capture"]
cover: "/blog/whatsapp-business-ai-agents-indian-smes.webp"
---

QuillGrid stores the token encrypted with AES-256-GCM. Revoke it on GitHub at any time.

Before and after

Checked before it publishes. Confirmed after.

The same publish checks run on every post, whichever platform it goes to. See all 17 checks

  1. 01

    17 checks first

    Title, slug, date, length, structure, placeholder text, claims about your company and 7 checks on the cover. A post that fails is held with the reason, and nothing reaches your site.

  2. 02

    Covers fixed automatically

    If only the cover fails, QuillGrid makes a new one and checks it again before anything is sent.

  3. 03

    Committed to your repo

    The post file and its cover are committed to your branch, and your host builds them like any other change.

  4. 04

    Confirmed live

    Once a post is live, QuillGrid loads its public URL and its cover until both are served, and flags the post if it hasn't appeared within 45 minutes.

FAQ

Next.js questions, answered.

Something else on your mind? Write to hello@quillgrid.in.

Does it work with Astro, Hugo, Gatsby or Eleventy?

Yes, if the site builds from Markdown files in a GitHub repository. You choose the folder and the URL pattern, and the frontmatter is standard YAML.

What about GitLab or Bitbucket?

Publishing by commit works with GitHub today. For other setups, use the JSON API or the one-line embed.

Will every post trigger a deploy?

Yes. Each post is committed to your branch, so your host builds it like any other change.

Can I review posts before they're committed?

Yes. Keep the review queue on and approve each post in QuillGrid. Nothing is committed until you do.

Will it touch other files in my repo?

No. It writes only each post's own file and cover image. Re-publishing a post updates its file in place.

See what QuillGrid would publish on your Next.js site.

Join the beta and we'll review your site, then show you the topics and posts we'd start with.

Join the beta