Testing GitJournal versus Obsidian

·4 min read·Tony Trinh
Testing GitJournal versus Obsidian

If you’ve ever tried to manage a static site completely from your phone, you already know the narrative. Writing the content is easy; it’s the infrastructure handshake that breaks you. You just want to sit on your couch, open a clean markdown editor, jot down some thoughts, and have a pipeline quietly deploy it to the web while you go do something else.

For a while, my eye was on GitJournal. On paper, it looks like the perfect silver bullet for this specific problem. It hooks directly into your GitHub repository, handles metadata parsing natively, and offers a rich-text editing experience designed for mobile devices. It feels like a ready-made mobile interface for a Hugo engine.

But then you hit the wall…a paywall.

The moment you want to customize your front matter metadata or build a structured template layout to keep your post architecture clean, GitJournal slaps you with a premium feature paywall. Look, I’m all for supporting developers, but forcing a paywall on basic YAML front matter parameters when you’re trying to build an automated, open static pipeline feels incredibly restrictive.

So, I did what any engineer does when a tool stops scaling with their workflow: I looked for a self-hosted, infinitely configurable alternative. Enter Obsidian.

Breaking Out of the Sandbox

I’ve used Obsidian for documentation and local note-taking before, but bringing its full environment to mobile—and forcing it to behave like a Git-connected content management system—is a completely different beast.

The strategy was straightforward: dump the rigid mobile apps and build a pristine, automated local vault that maps directly to my live blog repository. Getting it running on a mobile file system requires a bit of linear precision (and a fresh app-data reset or two when the file structures inevitably get stubborn), but once the Git community plugin successfully handshakes with a clean GitHub Personal Access Token, the ecosystem completely shifts. You aren’t boxed into someone else’s definition of a “journal” anymore. You have a full desktop-grade terminal tree right in your pocket.

The Automation Blueprint

To make Obsidian actually viable as a low-friction mobile publishing tool, you have to strip away the overhead. If I have to manually type out ISO timestamps or wrestle with mobile keyboard brackets every time I want to post a tech tip, the pipeline is broken. Here is how the new architecture is locked in:

  • Zero-Friction File Creation: The vault’s default note directory is mapped straight to content/en/posts/. One tap of the “New Note” icon, and the file is already sitting exactly where the Hugo compiler expects it.
  • The Asset Pipeline: Pasting or taking a photo on the phone automatically drops the raw asset into static/images/ behind the scenes. By forcing Obsidian to turn off internal WikiLinks, it writes standard, web-compliant markdown paths ( ) that render cleanly across any browser.
  • The One-Click YAML Stamp: Instead of dealing with GitJournal’s metadata limitations, Obsidian’s core template engine handles everything. Dropping a custom boilerplate into a hidden _templates folder means I can trigger the command palette, stamp a post layout, and let the app auto-populate the title string and Hugo-formatted timestamps instantly.

The Automated Hand-off

The final piece of the puzzle was configuring the background sync behavior. Mobile Git plugins love to fire background interval timers, which ironically leads to a stream of empty commits tracking zero changes—throwing annoying red compilation errors on your GitHub Actions or Cloudflare Pages pipeline because there’s literally nothing new to build.

The clean fix? Silencing the idle timers entirely. By setting the sync intervals to zero and relying strictly on the “Auto commit-and-sync after stopping file edits” safety guard, the phone stays completely quiet while idle.

The exact second I finish writing an article and close the app, the background engine wakes up, bundles the text and media assets, pushes a single healthy commit upstream, and hooks beautifully into the deployment pipeline.

It took a bit of scaffolding to get right, but the friction is entirely gone. No paywalls, no rigid interfaces—just a bulletproof markdown engine running exactly the way it’s supposed to.

Time to actually write some content.