blob: f78285759d9764354d34d25de4fbe035b404e825 (
plain)
Pending tasks for website editing
Micropub service
Several Micropub services exist.
None of them however fit our needs
- Free Software
- Sensible for self-hosting
- Reasonably security (excludes PHP code)
- Reasonably memory-efficient (excludes Java and Scala code)
- Reasonably decentral (excludes Go code)
- Reasonable to package (excludes Swift and Elixir code)
- Content stored in git (SQL used only for caching if at all)
- Content format is Markdown (preferably CommonMark)
- must support article posts
- must support updating existing posts
Develop server from scratch
We will create a proxy service from scratch,
using indieweb and git2.
Minimal Viable Product
- implement only MUSTs in Microsub server spec
- cover Micropub post entry article
(fail if POST contains any other data than that)
- store received post as file
(fail if already exists)
- add created post file in git
(fail if
git add ... or git commit ... fails)
addition: edit
- cover Micropub scopes read and update
- when requested to read dir, return list of existing files in git
- when requested to read file, return content of file in git
- when requested to update file, replace existing file in git
(fail if unable to do that)
addition: parse data
- convert POST content from html to CommonMark
- convert GET content from CommonMark to html
addition: parse metadata
addition: media reference
addition: media upload
- cover accepting upload of new media to local git using git-annex
(fail if
git annex add ... fails)
- cover acting as Media Endpoint
Micropub client
Several Micropub clients exist.
The most promising is Indigenous.
Unfortunately the desktop flavor is implemented on top of Electron,
which is unlikely to ever be packaged in Debian.
Develop client from scratch
Maybe create a desktop client from scratch,
using indieweb and either tauri or millennium.
|