← Back to specgit

specgit guides

A Google Docs–style editor for product specs that live in GitHub

A good Google Docs alternative for product specs keeps the writing experience and moves the file to where engineering already works. That is what specgit is: a visual editor on the Markdown and HTML files in your GitHub repository. You type, format, highlight, and comment the way you would in Docs. Underneath, every save is a Git commit with your name on it, every comment thread is a pull request review conversation, and publishing merges the spec into your base branch. Engineers review it in the flow they already use, without a new login, and the AI coding agents working in that repo read the spec as context. The doc is a file you own, so it outlives the tool you wrote it in.

Google Docs is good at writing and bad at staying true to a shipping product. That gap is the reason to move the documents engineering builds from, and it is not a reason to move everything else in your Drive.

Why Google Docs fails for specs

The spec lives in Drive, the code lives in GitHub, and the two drift apart from day one. Engineers get a link in Slack, read it once, and build from the ticket; the product moves on and the doc quietly describes a product that no longer exists. There's no review flow engineers actually use: resolved comments stay in the doc's comment history, but nothing holds the document until the engineer who owns that area signs off, and sharing is managed in a permissions system your engineering org doesn't control. Meanwhile, AI coding agents working in the repo can't see the doc at all. We wrote up the full mechanism in why product specs go stale.

Saves are commits

Every save in specgit is a real Git commit, attributed to the person who made it. That means full history for free: you can see exactly what changed, when, and by whom, and undo back to any point. Docs keeps a version history too. The difference is that this one is the same audit trail your engineers already trust for code, so you can diff any two points in the file's life, use blame to find the commit behind a single sentence, and revert one change without touching the rest.

Comments are pull request threads

Highlight text and comment, just like in Docs — but the thread is a real GitHub pull request review conversation. Engineers reply from GitHub or from specgit, every discussion is on the record next to the change it's about, and nothing lives in a separate silo your team will forget to check.

Publishing is a merge

When the spec is ready, publishing merges it to your base branch — the same flow engineers use to ship code. Repos with branch protection or required reviews work end to end: specgit shows exactly what's needed ("needs 2 approving reviews — 1 so far"), reviewers approve right in specgit, and "Publish when approved" publishes automatically the moment approval lands.

Because it is an ordinary pull request, the rest of your repo's machinery comes along. The checks you already run on pull requests run on the doc, whether that is a link checker, a style linter, or a full site build, and specgit tells you when a publish is waiting on them. If the repo builds a site from its base branch with GitHub Pages, Docusaurus, MkDocs, Vercel, or Netlify, that merge is what puts the page live. specgit is not the renderer or the host, so the theme, the domain, and reader-facing search stay with the pipeline that already owns them.

When Google Docs is actually fine

Moving a spec into the repo has costs, and some documents should stay in Drive. Before you migrate anything, check it against these:

  • Readers who are not on GitHub. Everyone in specgit signs in with a GitHub identity through the specgit GitHub App, so a client, an agency, or a finance reviewer without an account cannot open the doc. Docs handles that audience with one link.
  • Documents whose readers do not match the repo. Access in specgit follows repository permissions. If a doc needs a different audience than the code, putting it in the repo makes sharing harder rather than easier.
  • Anything that is mostly layout. Markdown is plain text, so slide-shaped one-pagers, heavy visual formatting, and spreadsheet math belong where they already are.
  • The messy first draft. If you want a blank page and no structure, write it wherever you think fastest. Download it as .docx and import it once it becomes something engineering will build from.
  • The rollout step. For an org-owned repo, an admin has to install the specgit GitHub App once, though members can request it in a click.

If you are weighing more than these two tools, there is a wider rundown of Notion alternatives and a head-to-head on specgit vs GitBook.

Zero Content Retention

Zero Content Retention: we never keep a copy of your documents or comments. GitHub remains the source of truth — the only things that ever touch our servers are temporary: live-collaboration state while you edit together, AI processing you explicitly invoke, and feedback you explicitly choose to share. Files stay plain Markdown or HTML, untouched and usable by any other tool. If you stop using specgit, the durable record is already in your repository.

Content-free analytics, no ad tech

Product analytics are content-free — never documents, comments, prompts, selections, chat, audio, repo names, or paths. Restricted or unknown regions send nothing before separate opt-in; elsewhere public events are cookieless and unidentified and signed-in events are pseudonymous with opt-out. No ad tech, sale, or retargeting. Read the complete disclosure in the Privacy Policy and the architecture on Security and data privacy.

Move your next spec into the repo

Open any Markdown or HTML doc already in your GitHub — or import a Google Doc — and start writing. Engineers review it in the flow they already use.

See plans & pricing

Free to start, no credit card. Zero Content Retention — we never keep a copy.

Frequently asked questions

Is specgit a full replacement for Google Docs?

For product specs and docs that should live with the code, yes — you get the same easy visual editing plus real engineering review. For everything else in your Drive (offer letters, spreadsheets, slide decks), keep using Docs. specgit is purpose-built for the documents that shape your product.

Do PMs need to learn Git or Markdown?

No. specgit is a visual editor — you write and format like you would in Google Docs. Saves become commits, comments become pull request threads, and publishing merges your work, all without touching Git commands, Markdown syntax, or GitHub's interface.

Can I move my existing Google Docs into specgit?

Yes. Download a Google Doc as Word (.docx) and upload it to specgit — it's converted to clean Markdown (using Microsoft's open-source MarkItDown) and saved into your repository. PowerPoint, Excel, and PDF files convert the same way.

Does everyone on the doc need a GitHub account?

Yes. GitHub identity is the only way into specgit; there is no separate password or invite-by-email path. Viewing and commenting never cost a seat, so bringing in a designer or a support lead is free, but someone outside your GitHub org still has to be granted access the way any repo collaborator would be.

What happens to tables, images, and diagrams when I import a Google Doc?

Microsoft's MarkItDown converts the .docx into Markdown, so the structure of the document comes across and the visual layout does not. In the editor you work with Markdown tables and images; Mermaid diagrams render inline and LaTeX math renders with KaTeX if your spec uses them.

Does specgit store my documents on its servers?

No. GitHub remains the source of truth — specgit never keeps a copy of your documents or comments. Live collaboration uses temporary editing state that is deleted after publish or direct commit, or after up to 7 inactive days. User-invoked AI processing and explicitly shared AI feedback are described in the Privacy Policy.

Is there a free plan?

Yes. The Free plan covers unlimited collaborators on 1 repository with 5 publishes per month — no credit card required. You sign in with GitHub through the specgit GitHub App, which only reaches the repositories you explicitly grant.

Also useful