Even a single-user tool can cause expensive mistakes when it controls local files and Git history. A save action that silently continues all the way to a public deployment may feel fast, but it is difficult to reason about and recover from.
Let saving end locally
Autosave writes a temporary file before replacing the original. It does not commit or push. If another process changes an open file, the app should show a diff instead of overwriting either version automatically.
Preview the real result before publishing
An in-app Markdown preview is useful while writing, but it cannot be perfectly identical to the site. Before publishing, the app creates a temporary Astro result and opens it in the default browser.
- Validate frontmatter
- Validate internal links
- Preview the real Astro site
- Receive final operator approval
Keep the Git scope narrow
Publishing stages only the current post and the images it references. It never sweeps unrelated post or site changes into the commit. If a push fails, the local commit remains intact and the app retries the same push.
The goal is not maximum automation. It is making every state-changing step understandable before it happens.