Micropub is a community maintained plugin for [Obsidian](https://obsidian.md/) to publish notes your own site with [Micropub](https://indieweb.org/Micropub).
- Forked from https://github.com/otaviocc/obsidian-microblog, this was used as the base, since Micro.blog also uses the Micropub standard under the hood
- With code from https://github.com/lijyze/obsidian-state-switcher, to manipulate the yaml frontmatter of notes
## Donating
Does this plugin improve your workflow? Say thanks with a coffee to the [original author](https://github.com/otaviocc).
This plugin is considered alpha software. Even though the publish workflow lets you publish notes, there are a lot of things that are not implemented, most notably:
- **Proper [RelMeAuth Flow](https://indieweb.org/RelMeAuth)**, for now you need to generate a static token that is validated by the Micropub endpoint and save that token in the settings of the plugin.
- **Updating posts**, once you have published at note, it is not possible to publish it again, making use of the [Micropub update action](https://www.w3.org/TR/micropub/#h-update).
- **Writing back tags, publish date, etc. to the frontmatter**, as this requires a `q=source` call to the micropub endpoint which is missing at the moment.
- **More configuration options**, for setting the names of targeted frontmatter fields, or for toggling on and of optional features like fetching tags, etc.
## Micropub Details
This plugin makes use of a few micropub features, including a few non-standard extensions
-`mp-destination` for potentially selecting a publishing destination. (https://indieweb.org/Micropub-extensions#Destination)
-`q=category` for receiving a list of existing tags/categories from the server (https://indieweb.org/Micropub-extensions#Query_for_Category/Tag_List)
-`q=config` for receiving a list of publishing channels on a site (https://github.com/indieweb/micropub-extensions/issues/40)
-`q=source` for checking for existing posts before attempting to update them (https://www.w3.org/TR/micropub/#configuration)
Once logged in, the plugin allows to set default values for tags, post visibility, and default blog (in case the user has more than one hosted blog). These default values will be used when posting to your site.