The parent repository added a number of useful features, but also a number of highly user-specific customizations of little general interest. These should be stripped out for a more widely-usable fork, and to keep the scope of the plugin narrow. Specifically, remove:
ChatGPT callouts
Role name replacement (with hardcoded developer handle)
Ghost now has an official Admin API JS client available. It supports features like creating posts, uploading images, and most everything else the admin API can do. Supporting it will likely be a ground-up rewrite of this repo, and probably should be its own repo.
Right now, the first H1 header is stripped from the note before publishing. That's useful if the H1 header is simply the title of the post, since that's displayed separately in Ghost. However, not everyone puts the title of their note as the first H1 header (especially if using Obsidian's "Show inline title" setting). This should be a configurable option in the settings.
If a post doesn't have a slug specified in the metadata, the slugExists check will always return false - meaning a new version of the post will always be created instead of updating an existing one. We should support checking if a post with a slug equivalent to the note's title exists, and update that post instead.
Will this make it too easy to accidentally overwrite an existing post unintentionally?
There's quite a few console.log() statements - these ought to be removed from production builds. Not sure yet if there's a way to leave them in for development, though...