Google Docs auth: a deadend, logged honestly
File-Transporter (then 'google-docs-api-plugin') was initialized to bridge Obsidian and Google Docs — and within hours hit a wall on Google's auth flow that stopped the project cold. The two-commit history reads init → deadend on the same day. Filing it retrospectively because building in public means logging the dead-ends too.
Why Care?
Most changelogs you read are about wins. The rest of building actually looks like this: you initialize a project with a clear goal, hit a hard block on the platform's auth model, and walk away to come back later. Filing this retrospectively because the splash page for content-farm needs an honest history — including the projects that didn't yet work.
If you've ever fought Google's OAuth flow inside an Electron app that doesn't have a public redirect URL, you know exactly what shape this dead-end was.
What's New?
(All historical, captured retrospectively. Both commits same-day.)
init(project): initialize project Google Docs api integration to Obsidian— manifest, package.json, scaffold, intent set: round-trip files between Obsidian and Google Docs.deadend(auth): google docs authorization not working— the work hit Google's OAuth requirements head-on and stopped.
The arc
The premise was simple: Obsidian users want to keep some files synced with Google Docs. Pull a Doc into the vault as a markdown note, push edits back. There's no shortage of Obsidian users who would use this.
The premise hit reality at the auth layer. Google's OAuth 2.0 flow requires a redirect URI. An Obsidian plugin running locally inside Electron does not have one. The workaround patterns — local loopback, device flow, copy-paste-the-token — each have caveats Google has been progressively tightening.
We logged the dead-end honestly and moved on to projects that could ship. File-Transporter has been waiting for a viable auth strategy ever since.
What this enabled
It enabled a name change. In May 2026, as part of cleaning up the content-farm pseudomonorepo, the plugin got the new on-disk name file-transporter to reserve linguistic space for "round-trip files between Obsidian and [any source]" — Google Docs being the first attempt, not the only one. The GitHub repo is still google-docs-api-plugin.git until we rename it.
If a future iteration wants to revive this, the path forward likely doesn't go through Google Docs API + OAuth at all. Options worth considering:
Drive API + simpler scopes — reading a folder's contents as Markdown might fit the device-flow pattern Google still supports for "limited input" devices.
Pandoc bridge — export from Google Docs to .md client-side, watch a folder, ingest. No OAuth from the plugin.
Different source — Notion, Coda, Bear, Apple Notes. The "transporter" name is intentionally provider-agnostic.
Retrospective notes
Written 2026-05-04, eight months after the dead-end.
Logged honestly because the changelog conventions skill explicitly says: "Embarrassments and bugs can be discussed honestly — that's part of building in public."
The deadend commit message is one of the most honest commit messages in the farm. Worth preserving.