IndieWebCamp June 19-26, 2015
This is an automatically-generated summary of the IndieWebCamp wiki edits from June 19-26, 2015
Table of Contents
New Pages
Changed Pages
- 2014-review 14 edits by tantek.com
- 2015/Brighton 8 edits by adactio.com, grantmorrison.net, ashleynye.co.uk
- 2015/Guest List 7 edits by paulmunday.net, anomalily.net, aaronparecki.com, giudici.us
- timeline 5 edits by tantek.com
- events/2015-07-15-homebrew-website-club 4 edits by tantek.com, kylewm.com
- Micropub 4 edits by aaronparecki.com
- Events 4 edits by aaronparecki.com, tantek.com
- founders 3 edits by tantek.com
- Main Page 3 edits by adactio.com, aaronparecki.com, tantek.com
- Getting Started on WordPress 2 edits by david.shanske.com
- Big Boring System 2 edits by dym.cx, tantek.com
- Teacup 2 edits by aaronparecki.com
- PHP 2 edits by dym.cx
- internationalization 2 edits by tommorris.org
- multiple-reply 2 edits by tantek.com
- bookmark 2 edits by dym.cx
- relmeauth 2 edits by ben.thatmustbe.me
- invitation 2 edits by tantek.com
- events/2015-07-01-homebrew-website-club 2 edits by tantek.com, kylewm.com
- wikifying 1 edit by tantek.com
- videos about the indieweb 1 edit by aaronparecki.com
- User:Csarven.ca 1 edit by csarven.ca
- notification 1 edit by tantek.com
- Twitter 1 edit by tantek.com
- Pinboard 1 edit by dym.cx
- page-name-discovery 1 edit by tantek.com
- WordPress 1 edit by notizblog.org
- Known 1 edit by www.edpatonwilliams.co.uk
- history 1 edit by tantek.com
- HTTPS 1 edit by marcus-povey.co.uk
- Micropub-brainstorming 1 edit by aaronparecki.com
- User:Dym.cx 1 edit by dym.cx
- salmentions 1 edit by rhiaro.co.uk
- User:Www.madmode.com 1 edit by tantek.com
- Ruby 1 edit by dym.cx
- events/2015-07-29-homebrew-website-club 1 edit by tantek.com
- favorite 1 edit by kartikprabhu.com
- ind.ie 1 edit by kylewm.com
- Go 1 edit by dym.cx
- Transitional Steps 1 edit by tantek.com
- permalink 1 edit by kartikprabhu.com
New Pages
Created by Loqi.me on June 24
- Wed, June 24 loqi.me prompted by tantek https://indiewebcamp.com/irc/2015-06-24/line/1435176979597 and dfn added by tantek
- Wed, June 24 tantek.com fix typo, expand citations, see also
- Thu, June 25 tantek.com why, how to, indieweb examples
- Thu, June 25 ben.thatmustbe.me Adding some brainstorming ideas
This article is a stub. You can help the IndieWebCamp wiki by expanding it.
micropub chaining is when you have one micropub endpoint itself use micropub to post to another micropub endpoint, like to POSSE a post to silos, or to a community site or other commons.
2015-06-08 Concept described in IRC by
Ben Roberts http://indiewebcamp.com/irc/2015-06-08/line/1433793069686
2015-06-23 Term proposed in IRC by
Tantek Çelik [1][2]
Why
By supporting micropub chaining on the micropub endpoint, you can use any any micropub client to post to your site, and let your server handle automatic POSSEing (e.g. via silo.pub) to silos, or cross-posting.
How to
Your server must be both a Micropub server implementation with an endpoint, and then have stored state to be able to be a Micropub client implementation to post to other Micropub endpoints.
IndieWeb Examples
None currently.
Brainstorming
Authorization Flow
One of the more difficult pieces will be getting the user interface for the initial set up. Getting a token to the first endpoint in the chain will be a slightly confusing task. Say there is some external site PublishToSomeSilo.xyz that we want to add to our chained micropub endpoints, how do we add this?
- visit PublishToSomeSilo.xyz and select to sign-up (probably at this point you will authorize the site to publish on your behalf).
- redirect to primary sites endpoint with <micropub endpoint>/?register=PublishToSomeSilo.xyz
- follow general flow as if <micropub endpoint>/?register=PublishToSomeSilo.xyz is a client looking to use access PublishToSomeSilo.xyz
- after verifying the token, store the token and URL and possibly other data (fields to add??) somewhere
- redirect to PublishToSomeSilo.xyz and get notification that your endpoint can now syndicate to this site.
~
Ben Roberts 2015-06-25
Annotate canonical url for post
The chained (secondary) micropub endpoint may not be specifically designed to be a micropub endpoint. How does one specify the canonical url in micropub post? syndication-of=<url> or maybe just url=<url> but this has been overloaded already polling data to edit a post. ~
Ben Roberts 2015-06-25
Custom text for syndicated copy
It might be beneficial to be able to send different syndication targets, different values for some fields (content for example) to allow syndicated copies to be abbreviated versions. How would the Micropub client application display this? how would it send the data as it requires embedded items (gets ugly in form encoding) ~
Ben Roberts 2015-06-25
See Also
Created by Aaronparecki.com on June 23
- Tue, June 23 aaronparecki.com all pages created in 2014
- Tue, June 23 aaronparecki.com thumbnail images
- Tue, June 23 aaronparecki.com remove redirects, add namespace for templates, add name of the file
- Tue, June 23 aaronparecki.com please don't edit
Pages created in 2014
Created by Aaronparecki.com on June 21
- Sun, June 21 aaronparecki.com create event page for last year's osbridge talk, and session notes
- Sun, June 21 aaronparecki.com add video URL
OAuth, IndieAuth, and the Future of Authorization APIs
You use OAuth every time you log in to Facebook or Twitter, but what if you could use it from your own website? What if your own domain became a source of data, and you had your own personal API? By decentralizing authorization to your own domain instead of a silo, you control when, how, and to whom your data is shared.
Session Notes
Notes from Aaron Parecki's talk at Open Source Bridge, 2014
Talking about oauth and indieauth
people used to microblog on the old days of twitter
there was an ecosystem of apps that let you write and read tweets in many creative ways.
the twitter web interface included which app was used to post that note leading to a diverse ecosystem of apps
some apps would create visualizations of your tweet history
in the dark ages before oath, you used to hand over credentials over to some of these applications. this was a major problem. how can people post to their twitter accounts without asking for their password?
lots of problems:
- security issues
- multiple places to change your password
everyone jumped on board with oath! this problem was no more
2014: moving this ecosystem out of twitter?
examples of indieweb sites:
Current in progress posting interfaces to personal websites and blogs:
Building our own posting interface gets boring, so why not use each others?
Quill: a simple web interface for posting notes to your website.
- signing in gives you a checklist of requirements that need to be met to use the client
- a simple post interface
- pressing post sends off a request to your website and it makes the post.
There are a few of these interfaces that work on multiple sites.
- taproot (barnaby walters waterpigs.co.uk)
- ownyourgram (ownyourgram.com)
Working with constraints:
- (re)invent as little as possible
- https is easier than cryptography
Oauth2 dropped crypto and relies only on https
only form encoded request and html for authentication
users are represented by urls
apps are represented by urls
putting these things together you get:
IndieAuth: Oauth2 + Web Identity
Example signing in with IndieAuth:
Application
- ClientID: the client you are signing into e.g.: indiewebcamp.com
- redirect_url: the thing indieauth redirects back to? e.g. indiewebcamp.com/auth/callback
- user
- me = their website identity e.g. aaronparecki.com
this is done by adding a rel=me attribute to a link to an profile that is OAuth enabled IE twitter or github.
The user clicks sign in on the client applicationL
Going through the details of how indiauth interacts with the client application. See: http://indiewebcamp.com/authentication
Now lets do that again in a different context. Signing into a web posting client with the domain name you will be posting to:
We will sign into a 3rd party app
- client_id = quill.p3k.io
- redirect_uri = a callback url
- user
- me = personal domain
users services:
the client authorizes the app, the app gets an authorization code, now goes and gets an access token.
the client gives that authorization code to the token endpoint. the token endpoint verifies the auth token and generates an access token for the client. the client stores that token to make publish requests to the micro pub endpoint. this is all oAuth2 with an additional layer of an identity layer (rel=me) on top?
If you want to actually try this, you can use quill.p3k.com to set all this up. You can just jump straight to building just the micro pub endpoint and put off the token endpoint work by using the auth and token endpoints aaron built.
Your personal site needs to verify access tokens
it can query the token endpoint to check token validity.
Micropub
"Chances are half of you have your own website running different software for publishing" Micropub is a vocabulary for creating and editing posts on your website.
its based on micro format 2 vocal: http://microformats.org/wiki/microformats-2
authentication is handled by oauth2 bearer tokens Usually provided by indieauth
you can delegate your endpoint to another service
Micropub details…. see the documentation linked above
Examples of different post types:
instagram photos via ownyourgram.com
quill
Multipart used for receiving files from a simple post request
no additional encoding scheme was required, just use multipart
trying to reinvent as little as possible
Questions
Shared secrets are scary (iOS decompile lead to secrete (the app) shared secrets to be leaked)
Is the access token similar to a session ID? Its kinda like a session ID. Pretty much equivalent. Its responsible for issuing a session. A string that you can use so when you come back and make a request it will be granted. Inforamtion on the website.
Open ID is complicated: How does this get out of the realm of geeks? How do we get people to get their own website. This is true. A lot of indieweb work is under the assumption that people have their own website. The assumption is that it will be easier to have a website in the future. Google just announced it will be a domain reg and will likely do a good job. An assumption but something we are working towards.
All urls are SSL. Thats complicated: Answer: yes a level of complexity, but its getting easier to run ssl. ssl is cheaper and companies are willing to dish out cheaper ssl certs. startssl gives out FREE ssl certs. Woop! Its a well established standard and hope the tools become easier. http://indiewebcamp.com/generations covers some of these issues.
Created by Tantek.com on June 23
Sarven Capadisli
Created by Loqi.me on June 26
- Fri, June 26 loqi.me prompted by ben_thatmustbeme and dfn added by GWG
This article is a stub. You can help the IndieWebCamp wiki by expanding it.
Hovercars are an as yet nonexistent form of transportation long used as an example of futuristic technology.
Created by Loqi.me on June 21
- Sun, June 21 loqi.me prompted by GWG https://indiewebcamp.com/irc/2015-06-20/line/1434851314517 and dfn added by acegiak
This article is a stub. You can help the IndieWebCamp wiki by expanding it.
weechat is an irc client that is often used as a central persistent connection that then relays to remote clients like glowingbear
Created by Loqi.me on June 21
- Sun, June 21 loqi.me prompted by tantek https://indiewebcamp.com/irc/2015-06-20/line/1434848852666 and dfn added by KevinMarks
This article is a stub. You can help the IndieWebCamp wiki by expanding it.
polymer is a web front end development toolkit from Google based on web components. The polymer starter kit at https://developers.google.com/web/tools/polymer-starter-kit/ ends up installing 33000+ files on your development system.
See Also
Created by Ben.thatmustbe.me on June 25
IndieID is an opne source IndieAuth service and an alternative to indieauth.com found at indieid.com
Motivation
Many people rely solely on indieauth.com as their auth endpoint, and while it is open source, it is ruby on rails and a little more difficult to run your own instance. IndieID is written in PHP, uses no database, and tries to keep required libraries to a minimum in hopes that anyone can run their own IndieAuth server. ~
Ben Roberts
Suported Providers
Desired Support
- Twitter Uses OAuth1 instead of OAuth2 so I have not gotten to it.
Specifically Not Supported
See Also
Created by Loqi.me on June 26
This article is a stub. You can help the IndieWebCamp wiki by expanding it.
answer to the ultimate question of life, the universe, and everything is 42.
Created by Kylewm.com on June 24
- Wed, June 24 kylewm.com Created page with "{{stub}} <dfn>[https://telegram.org/ Telegram]</dfn> is a cross-platform encrypted messaging app. Telegram is a centralized service, with a closed source server and open source ..."
This article is a stub. You can help the IndieWebCamp wiki by expanding it.
Telegram is a cross-platform encrypted messaging app. Telegram is a centralized service, with a closed source server and open source clients.
Changed Pages
14 edits by tantek.com- Mon, June 22 tantek.com start ordering things in some sort of a reasonable narrative, expand the harder sections, work on closing sections that are more positive
- Tue, June 23 tantek.com stub a 2014 Technologies section with Vouch, let's add more by analyzing 2014 IWC demo notes
- Tue, June 23 tantek.com /* Technologies */ indie-config
- Tue, June 23 tantek.com link to 2014-created
- Tue, June 23 tantek.com /* Technologies */ add Services stub with Bridgy, and Applications
- Tue, June 23 tantek.com /* Community Resources */ 1000+ pages created
- Tue, June 23 tantek.com /* Services */ more Bridgy details
- Tue, June 23 tantek.com micropub first implemented / interop in 2014
- Tue, June 23 tantek.com 6 micropub server implementations, link to each sets as of 2014
- Thu, June 25 tantek.com /* Community Resources */ list best documentation/resource pages created in 2014
- Thu, June 25 tantek.com /* Technologies */ invitation
- Thu, June 25 tantek.com /* Community Resources */ mobile, notification
- Fri, June 26 tantek.com /* Technologies */ h-feed adoption by indieweb community
- Fri, June 26 tantek.com /* Community Resources */ payment
8 edits by adactio.com, grantmorrison.net, ashleynye.co.uk
7 edits by paulmunday.net, anomalily.net, aaronparecki.com, giudici.us- Sun, June 21 paulmunday.net /* Participating */
- Mon, June 22 anomalily.net /* Official Guest List */
- Mon, June 22 aaronparecki.com sort by first name (was sorted by domain name instead)
- Mon, June 22 aaronparecki.com add rsvp from tito registration
- Wed, June 24 aaronparecki.com registration from tito
- Wed, June 24 aaronparecki.com give people 24h to add themselves before I copy registrations from tito
- Fri, June 26 giudici.us /* Remote Participants */
5 edits by tantek.com- Tue, June 23 tantek.com /* 2008 */ rel=in-reply-to in HTML proposed by csarven on microformats wiki
- Tue, June 23 tantek.com /* 2013 */ event W3C Workshop on Social Standards
- Tue, June 23 tantek.com /* 2009 */ first implementation to publish rel=in-reply-to
- Tue, June 23 tantek.com /* 2009 */ '''
- Tue, June 23 tantek.com 2014 vouch concept, term, spec, implementations
4 edits by tantek.com, kylewm.com
4 edits by aaronparecki.com- Wed, June 24 aaronparecki.com /* Syntax */ update with latest JSON syntax for edits
- Wed, June 24 aaronparecki.com /* Updating Objects */ updated syntax
- Wed, June 24 aaronparecki.com move syndicating to brainstorming
- Wed, June 24 aaronparecki.com /* Updating Objects */ add JSON examples
4 edits by aaronparecki.com, tantek.com- Sun, June 21 aaronparecki.com add upcoming osbridge talk
- Sun, June 21 aaronparecki.com add last year's osbridge talk
- Sun, June 21 tantek.com update dfn, upcoming header to clarify scope / encourage more deliberate contribution
- Sun, June 21 tantek.com /* Upcoming */ de-dupe, bold
3 edits by tantek.com- Sun, June 21 tantek.com clarify movement, terminology, camp
- Sun, June 21 tantek.com call out years, add specific dates inline instead of having to click through to find them
- Sun, June 21 tantek.com add History of IndieWebCamps with template listing them all
3 edits by adactio.com, aaronparecki.com, tantek.com
2 edits by david.shanske.com- Thu, June 25 david.shanske.com /* Optional Plugins */
- Thu, June 25 david.shanske.com /* Syndicate your content to other sites */
2 edits by dym.cx, tantek.com- Tue, June 23 dym.cx + == Site death ==
- Wed, June 24 tantek.com update dates, since late 2013, update dfn to what is currently active
2 edits by aaronparecki.com
2 edits by dym.cx
2 edits by tommorris.org- Tue, June 23 tommorris.org fixing link to Basic Bilingual as Steph's site seems to be broken (a database error - [[database-antipattern]]?)
- Tue, June 23 tommorris.org /* Solutions */ adding pointer to Django and GNU Gettext
2 edits by tantek.com- Wed, June 24 tantek.com /* Ben Werdmuller */ another interesting multi-reply example, possibly to get around lack of salmention
- Wed, June 24 tantek.com /* Tantek */ s/rarely/once in a while, add recent multireply in response to 3 other indie replies/posts in order to have it show up as a comment on all 3
2 edits by dym.cx
2 edits by ben.thatmustbe.me- Thu, June 25 ben.thatmustbe.me stub out a 401 troubleshooting
- Thu, June 25 ben.thatmustbe.me /* Twitter returning 401 error */
2 edits by tantek.com- Thu, June 25 tantek.com /* IndieWeb Examples */ subheads for examples
- Thu, June 25 tantek.com /* IndieWeb Implementations */ subhead bridgy
2 edits by tantek.com, kylewm.com
1 edits by tantek.com- Mon, June 22 tantek.com add focus section with what's good for indiewebcamp user pages and examples of what's not, clarify some other scope, per csarven edit https://indiewebcamp.com/wiki/index.php?diff=20083&oldid=19998&rcid=20074
1 edits by aaronparecki.com- Mon, June 22 aaronparecki.com add my osbridge video from last year
1 edits by csarven.ca- Mon, June 22 csarven.ca Initial itches off the top of my head
1 edits by tantek.com- Mon, June 22 tantek.com rename sections to Why, Why not, How to, group Push Notifications, add indieweb examples with aaronpk, brainstorms, then projects
1 edits by tantek.com- Mon, June 22 tantek.com /* POSSE Replies to Twitter */ add subheads for originals with/without POSSE tweets, add new method of @-mentioning the indieweb author to scope a POSSE tweet reply with examples
1 edits by dym.cx
1 edits by tantek.com
1 edits by notizblog.org- Mon, June 22 notizblog.org /* Security and Spam Protection */
1 edits by www.edpatonwilliams.co.uk- Fri, June 26 www.edpatonwilliams.co.uk /* Setup Known on nginx */
1 edits by tantek.com- Sun, June 21 tantek.com fix dfn, see also explicitly timeline / founders for other things
1 edits by marcus-povey.co.uk
1 edits by aaronparecki.com- Wed, June 24 aaronparecki.com move syndicating to brainstorming, update notes on other brainstorming sections
1 edits by dym.cx
1 edits by rhiaro.co.uk
1 edits by tantek.com
1 edits by dym.cx
1 edits by tantek.com- Thu, June 25 tantek.com SF location confirmed @MozSF, RSVP for SF
1 edits by kartikprabhu.com- Thu, June 25 kartikprabhu.com /* Twitter */ add favourite display screenshots
1 edits by kylewm.com- Tue, June 23 kylewm.com /* Criticism */ replace broken link with archive.org
1 edits by dym.cx- Wed, June 24 dym.cx /* See Also */ only link to the page with other languages is sufficient
1 edits by tantek.com- Thu, June 25 tantek.com cleanup this page to link to other pages with more well thought out options, see also
1 edits by kartikprabhu.com- Wed, June 24 kartikprabhu.com added changing permalinks section