2020/Pop-ups/Micropub
Micropub is a IndieWebCamp Pop-ups 2020 session.
IndieWebCamp Pop-ups 2020
Session: Micropub
When: 2020-07-25 9:30 AM (Pacific) / 12:30 PM (Eastern)
URL: https://events.indieweb.org/2020/07/micropub-pop-up-session-kGMIMOXFUdBn
Video: ▶️2:30:11s
This session will be to iterate on proposed extensions to Micropub, listed on the the Micropub-extensions page. We will discuss which extensions can be moved to stable, try to better define those proposed, and to see who is willing to implement what proposal.
If possible, attendees should familiarize themselves with existing open issues.
Details
Organizers
- David Shanske organizer
- Add yourself here… (see this for more details) (we're always happy to have additional organizers and facilitators to help out)
Etherpad
We use an Etherpad to take notes on the event.
Volunteers
- Add yourself here… (see this for more details) (we're always happy to have additional help!)
- Notes for the session will take place at: https://etherpad.indieweb.org/MicropubDrafts
- Streaming video/audio platform: Zoom
- Create week: Following the session, we'll give people a chance to create something using a Micropub draft extension and post a demo.
- Demos: When we're done, we'll may try a short online demo session or alternatively, collect all the items created as a result on a page.
RSVP
If you feel able, add yourself to the event, at Meetable, or post an indie RSVP on your own website.
Participants
- Marty McGuire - built a handful of single-purpose Micropub clients https://indieweb.org/User:Martymcgui.re#Code_.2F_Services ; mostly listening for what's new!
- David Shanske (reluctant, but wholly competent and excellent, facilitator) - one of builders of the WordPress micropub client
- Barry Frost - builder of micropublish.net
- Manton Reece - builder of micro.blog
- craftyphotons - new to IndieWeb, building a MicroPub server to publish my Hugo site is one of my next projects
- David Somers
- Jamie Tanna building his own client that will reflect server's capabilities automagically
- Carolina Gilabert (mostly listening too :))
- Ru Singh (mostly listening) building a micropub client, soon to open source
- Chris Aldrich
- Aaron Parecki
- Tantek Çelik
- ... add names
Notes
- forking the spec to github.com/indieweb and its living specification URL to micropub.spec.indieweb.org
- Tantek Çelik pointed out as Aaron Parecki is the spec editor and wrote the text, he can relicense it with attribution.
- The search modifier for stable extension, Query for Category/Tag List The search modifier would search for categories for an auto-complete.
- https://github.com/indieweb/micropub-extensions/issues/5 is the stable extension for querying category/tag
- intended use is autocomplete. other things to autocomplete are nicknames for @-mentions
- https://github.com/indieweb/micropub-extensions/issues/34
- David Shanske will modify his code to match this, as will Manton Reece and Barry Frost
- Modifiers for stable extension, Query for Post List. q=source is now stable, but the filters: query, limit, before, after, order, exists, not-exists, etc are still in need of further discussion.
- https://github.com/indieweb/micropub-extensions/issues/4
- https://github.com/indieweb/micropub-extensions/issues/35 - Limit as a parameter for limiting all return queries. How it behaves/chooses will vary based on endpoint decisions.
- Offset vs before/after
- David Shanske willl support offset
- Jacky Alciné supports before/after [chronological pagination] and not offset [sequential pagination]
- Manton Reece supports limit and offset already
- post-status - Show only drafts or published.
- David Shanske will commit to supporting this
- Jacky Alciné supports this in Template:Koype/Publish and Template:Lwa but will not support in Template:Lighthouse
- Aaron Parecki will support this
- Barry Frost will commit to support this
- {{manton} will support this
- visibility - public, unlisted, private
- David Shanske will commit to support this
- Jacky Alciné will work on supporting this in Template:Koype/Publish, Template:Lighthouse and Template:Lwa
- Barry Frost will commit to support this
- Any microformats properties would go in as a theoretical property query, but anything such as status or visibility would be their own query.
- properties[key]=value - Tabled for further discussion
- post-type - querying for post types as defined by PTD. - Further discussiion needed, issue needs to be opened.
- Draft Scope - https://github.com/indieweb/micropub-extensions/issues/24
- Trust / Privacy
- This could also be a useful feature for location-based apps to ensure privacy
- Making sure one trusts an app before they have the ability to publish directly.
- Also good for initial posts to make sure the UI and details are done correctly.
- Chris Aldrich noticed some odd formatting issues with respect to his theme when posting via ThreadReaderApp initially; draft would have mitigated this
- iA Writer did this voluntarily; they set the status as draft as default
- David Shanske already implements this
- Aaron Parecki will be implementing this
- Jacky Alciné will look into this at https://git.jacky.wtf/indieweb/koype/issues/212
- Trust / Privacy
- Link Rel for Media Endpoint - https://github.com/indieweb/micropub-extensions/issues/15
- Manton Reece -1
- Jacky Alciné -1 `q=config` handles this well
- Consensus is not yet a compelling reason to add this complexity
- Standalone Pages - https://github.com/indieweb/micropub-extensions/issues/25
- Proposal includes / in the mp-slug other h=page.
- Jacky Alciné to drop `h-x-page` in favor for `h-page`
- Jacky Alciné will confirm if the Elixir IndieWeb library supports PTD for pages
- Using h=page seems to be the most straightforward approach.
- David Shanske will commit to supporting this in WordPress and will decide about whether to mark up the page with h-page later
- Aaron Parecki to implement as wel
- Manton Reece will implement this too (dropping the x- I'm currently using)
- Manton Reece will also add h-page to manton.org before rolling it out to all of Micro.blog
- How to handle page heirarchies - parent/child
- Define h-page on MF wiki, add PTD to add page to the algorithm, define ?q=source&post-type=* as querying all types defined by post type discovery
- Add to indieweb.org/page examples of people using pages.
- Prior art / references:
- Add Checked Property to Syndication Target - https://github.com/indieweb/micropub-extensions/issues/23, Needs Implementations.
- Jacky Alciné, David Shanske and Aaron Parecki, Barry Frost to implement
- Jacky Alciné tracking progress at https://git.jacky.wtf/indieweb/koype/issues/213
- Clients would have to change behavior to offer this. Some may be caching this only once.
- Second idea, when querying for targets, add `post-type` to allow for customized targets based on context. Possibly add url later. https://github.com/indieweb/micropub-extensions/issues/23#issuecomment-663887155
- Location Checkin Information - Overloading geo URI https://github.com/indieweb/micropub-extensions/issues/32
- Response from Media Endpoint - https://github.com/indieweb/micropub-extensions/issues/13
- David Shanske and Jacky Alciné will implement a minimal form of this
- Manton Reece will update response from upload to include JSON
- Minimum URL
- Optional Width + Height, Mime-type, children for alternative size files - Mirror EXIF vocabulary?
- Query for Media from Endpoint - https://github.com/indieweb/micropub-extensions/issues/14
- q=last is superseded by q=source
- Aaron Parecki will add q=source to his website and drop from Quill in favor of q=source&limit=1
- Manton Reece already supports this, going to remove properties except url
- Same as response, except item property with list of response styles from above
- Query for Location/Venue - https://github.com/indieweb/micropub-extensions/issues/6
- h-adr geo, h-card venue
- Documenting other systems that have this feature...screenshots...data used
- Microformats displayed for location
- Document tagging posts plus checkin as user cases for this
- Deleting uploaded media - https://github.com/indieweb/micropub-extensions/issues/30
- Should require delete + media scope
- action=delete to mirror Micropub endpoint syntax
- {{manton} will support this
- Configuration Queries - Tabled and not discussed
- Query for Supported/Unsupported Properties - https://github.com/indieweb/micropub-extensions/issues/8, https://github.com/indieweb/micropub-extensions/issues/21
- Query for Supported Queries - https://github.com/indieweb/micropub-extensions/issues/7
- Query for supported properties, for a supported post-type https://github.com/indieweb/micropub-extensions/issues/33
Additional ideas for discussion
- Copy update - clear up possibly confusing paragraph around media endpoint - https://github.com/w3c/Micropub/issues/118
- Content-negotiation for Browser-driven interactions to Micropub endpoints https://github.com/indieweb/micropub-extensions/issues/28