#dev 2019-10-18
2019-10-18 UTC
jfoster, [asuh], GWG, skitz0_, gRegorLove and [chrisaldrich] joined the channel
#
ShokuninDiscord[ Anyone here build progressive web apps?
KartikPrabhu and [snarfed] joined the channel
#
ShokuninDiscord[ Have you built any?
KartikPrabhu joined the channel
#
ShokuninDiscord[ I’m starting to look into them for us
[Lewis_Cowles] joined the channel
#
[Lewis_Cowles] What features do you need?
#
[Lewis_Cowles] PWA is a description of an ecosystem of technologies. Everyone sells it as something different.
#
[Lewis_Cowles] At work I've built features which fall back to no JS, no CSS, text-mode. I'm a progressive extremist. I've never met a single other person taking it that far and TBH I've still not solved many of the problems it throws up.
#
[Lewis_Cowles] We hired some JS experts who's designs were "progressive" and what they meant by that was to try to tie everything to Ionic + React, which i don't think is particularly progressive at all
#
[Lewis_Cowles] You might simply mean a service-worker, or hiding content. That's progressive in the same way that media queries are responsive design. It's a particular strategy which does not guarantee progressive-ness.
[xavierroy], [snarfed]1, KartikPrabhu, [tantek], krychu, [Rose] and gxt_ joined the channel
[frank] and [Lewis_Cowles] joined the channel
#
[Lewis_Cowles] My primary criticism of ServiceWorker is not being able to hook non-GET requests and needing to be concerned with cross-origin (even if only a sub-domain). Other than that it's pretty cool.
#
[Lewis_Cowles] It means I have to do this
#
[Lewis_Cowles] ```
#
[Lewis_Cowles] self.addEventListener('fetch', function(event) {
#
[Lewis_Cowles] if(
#
[Lewis_Cowles] (event.request.url.startsWith("https://www.fqdn.co.uk")) &&
#
[Lewis_Cowles] (event.request.method == "GET")
#
[Lewis_Cowles] event.respondWith(
#
[Lewis_Cowles] fromNetwork(event.request, 500)
#
[Lewis_Cowles] .catch(function () {
#
[Lewis_Cowles] return fromCache(event.request);
#
[Lewis_Cowles] })
#
[Lewis_Cowles] );
#
[Lewis_Cowles] fetchNetwork and fromCache are https://www.codesign2.co.uk/sw.js
#
[Lewis_Cowles] Rose++
#
[Lewis_Cowles] Rose if you use PHP there is a (albeit slow) pure PHP version. https://github.com/leafo/scssphp/releases
jeremycherfas and vika_nezrimaya joined the channel
#
[Lewis_Cowles] One is transparent interception of form data, to queue for later in localStorage or similar mechanism
#
[Lewis_Cowles] I have a work-around
#
[Lewis_Cowles] but it's not transparent, you basically start with a use-case that there is no form, or the button is disabled (which harms progressive enhancement in other ways)
#
[Lewis_Cowles] if you default to a server-side action which causes a regular page-nav request, there is no way to intercept with ServiceWorker that I've seen to intercept and say "right, I'm going to queue this"
#
[Lewis_Cowles] Right but the idea is to decompose to work without a service-worker
#
[Lewis_Cowles] otherwise it's not progressive enhancement, it's SuV suburb visitors only
#
[Lewis_Cowles] That is a solution
#
[Lewis_Cowles] I mean, it's contextual to what you need isn't it?
#
[Lewis_Cowles] No, it's about end-users. The code is a vehicle to provide their expeience
#
ShokuninDiscord[ Those are great points
#
ShokuninDiscord[ Thanks
#
ShokuninDiscord[ Basically our app is built in React and we have a desktop app for Windows Linux Mac at the moment
#
[Lewis_Cowles] So if their experience supports traditional form actions, then you sacrifice offline first a bit
#
ShokuninDiscord[ And I’d like to have it ported to Android as a PWA
#
ShokuninDiscord[ Both as mobile web and some basic app we can throw on the store
#
[Lewis_Cowles] https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Add_to_home_screen probably what you're looking for, with maybe a service worker then
#
ShokuninDiscord[ In our case the React site is basically a Facebook Groups alternative
#
ShokuninDiscord[ I’m trying to find examples of that yeah
#
[Lewis_Cowles] Using your point about service-worker, maybe it could be [tantek]
#
ShokuninDiscord[ How to take a React site and make it like that
#
[Lewis_Cowles] If a certain set of decisions were to align, you could have a non-react entrypoint
#
ShokuninDiscord[ No luck yet, some basic tutos though
KartikPrabhu joined the channel
#
[Lewis_Cowles] Shokunin, I'd imagine other problems would come up such as message versions
#
ShokuninDiscord[ Honestly I'm shaky on what can service workers are
#
ShokuninDiscord[ I understand normal html5 pages and such
#
[Lewis_Cowles] If someone does use an offline-first PWA (manifest + serviceworker) you could avoid re-downloading react and app code, but you'd need to do a lot more server work to cope with the potential for many active client versions, or work out a way to gracefully present the user with a way to update (sw.js above does that)
#
ShokuninDiscord[ but the service aspect, is it like a set of apis the browsers provide?
#
[Lewis_Cowles] All must be supported by client (browser)
#
[Lewis_Cowles] You lose degrees of control any time you push processing out to the edge
#
[tantek] Shokunin, start with https://adactio.com/articles/13796 that should help make it less shaky 🙂

#
[Lewis_Cowles] tantek++
#
[tantek] though I'll probably start with https://adactio.com/journal/9775

#
Loqi service workers are scripts that run in the background, separate from tabs with the site open, and are commonly used for offline functionality and push notifications https://indieweb.org/service_worker

[fluffy] joined the channel
#
ShokuninDiscord[ Thanks tantek
#
[tantek] shokunin, now updated with hopefully more context and answers (incorporating what I said above): https://indieweb.org/service_worker

[jeremycherfas] joined the channel
#
ShokuninDiscord[ Agreed
#
ShokuninDiscord[ Thanks!
#
ShokuninDiscord[ If you feel like learning by going hands on, we could use the help 😉
#
ShokuninDiscord[ We've actually released our first public builds on http://github.com/permaweb/permaweb/releases
#
ShokuninDiscord[ you can create groups, join them, make posts
#
ShokuninDiscord[ it's super early but it "works"
#
Loqi It looks like we don't have a page for "router" yet. Would you like to create it? (Or just say "router is ____", a sentence describing the term)

#
Loqi routing is a term that refers to the way that URIs are mapped to content producers, usually in a dynamic publishing or web app context https://indieweb.org/routing

#
Loqi It looks like we don't have a page for "mapped" yet. Would you like to create it? (Or just say "mapped is ____", a sentence describing the term)

#
Loqi It looks like we don't have a page for "content producer" yet. Would you like to create it? (Or just say "content producer is ____", a sentence describing the term)

#
Loqi It looks like we don't have a page for "dynamic publishing" yet. Would you like to create it? (Or just say "dynamic publishing is ____", a sentence describing the term)

#
Loqi It looks like we don't have a page for "url path" yet. Would you like to create it? (Or just say "url path is ____", a sentence describing the term)

#
Loqi It looks like we don't have a page for "url" yet. Would you like to create it? (Or just say "url is ____", a sentence describing the term)

#
Loqi URL design is the practice of deliberately designing URLs, in particular, permalinks, typically for a better UX for everyone who creates, reads, and shares content https://indieweb.org/URL_design

#
[tantek] url is /URL_design

#
[Lewis_Cowles] instead of map, could we say association between two things?
#
[Lewis_Cowles] I could add two sections for file-based routing and dynamic routing, as well as central router
#
[Lewis_Cowles] what is uri?
#
Loqi uri is Unresolvable Random Incomprehensible https://indieweb.org/uri

#
[Lewis_Cowles] Do we want to keep the joke?
#
Loqi It looks like we don't have a page for "Symfony" yet. Would you like to create it? (Or just say "Symfony is ____", a sentence describing the term)

#
Loqi [fluffy]: [grantcodes] left you a message 2 days ago: maybe something like http://examples.tpxl.io/ would be useful for you understanding mf2 markup (although it needs updating)

#
ShokuninDiscord[ Tantek: it's built on Textile.io
#
ShokuninDiscord[ Basically they have a wallet for your data
#
ShokuninDiscord[ and we make a frontend where we can create groups and posts
#
[Lewis_Cowles] '''<dfn>routing</dfn>''' is a term that refers to ensuring well-structured requests are met with the desired, perhaps expected content ?
#
[Lewis_Cowles] ignore that it's meant for another channel
[grantcodes] joined the channel
#
Loqi URI is an abbreviation for Uniform Resource Identifier which was a late 1990s to early 2000s term intended as broader in meaning than URL https://indieweb.org/uri

#
ShokuninDiscord[ Textile has their own ID system
#
ShokuninDiscord[ Though it's really just a key, similar to a BTC wallet
#
ShokuninDiscord[ you use that key to login
kingpapa joined the channel
#
Loqi It looks like we don't have a page for "IRI" yet. Would you like to create it? (Or just say "IRI is ____", a sentence describing the term)

kingpapa joined the channel
#
[jeremycherfas] Grav’s routing is also very powerful, and dangerous in the wrong hands.

#
ShokuninDiscord[ @tantek we're not exactly tied to their ID
#
ShokuninDiscord[ we're just starting with their wallet, however I'm keen on using indieauth eventually
#
ShokuninDiscord[ It just helps us get something up and running faster
#
[grantcodes] Chiming in on the pwa / progressive stuff: there are a lot of options for react. For out of the box stuff there's Gatsby or next which are both progressive by default and have easy plugins for pwa / service worker support. And for a more manual setup there are plugins for create-react-app and webpack

kingpapa joined the channel
#
[grantcodes] [Rose] maybe checkout upstatement/router I think it's called. It's a wp routing library

#
[grantcodes] Although it may be tightly linked to timber (twig templating for WP(

#
[grantcodes] There might be something in the roots wordpress ecosystem too. It uses / is inspired by laravel stuff

#
[grantcodes] Haha well that's equally likely to happen in any other system

#
[Rose] Help, someone pull me out of this rabbit hole: https://timber.github.io/docs/

#
[grantcodes] Haha timber is good. Makes wordpress a bit more sane for me

#
[grantcodes] Navs are a bit of a pain in WP for me

#
[grantcodes] Also I just started moving from timber to roots sage. Which it pretty similar but uses blade templates. I prefer that is stays a little closer to standard WP by using built in functions which timber completely replaces / extends

#
[grantcodes] Header, footer and sidebar/widgets are easier to start with imo

#
[grantcodes] Sounds like a good plan! The stuff I'm talking about it is more for when you understand and are fed up with WordPress theme development 😅

kingpapa_, treora, [Zegnat], [KevinMarks], dogfarted and live_ joined the channel
#
[jeremycherfas] Super noob asks: is MAMP supposed to be able to run without an internet connection?

#
[jeremycherfas] Getting an error I have never seen before: ssl error ex record too long

#
aaronpk I think that means you're trying to access https://localhost but SSL isn't enabled?

#
[jeremycherfas] Seems like it is a FF error

gRegorLove joined the channel
#
[jeremycherfas] I think I need to disable SSL on the local site I am trying to access. Seems like I overwrote the local htaccess, but I am not going to try that while in transit.

dogfart and [calumryan] joined the channel
[xavierroy] joined the channel
#
[Lewis_Cowles] tantek, does it work with query-string attributes to pre-fill body and subject?
gxt_ joined the channel
#
@therealkimblim ↩️ Pardon me for asking this, Andy, but why was this webmention deleted and not posted to the website — genuinely curious and not trying to step on any toes.
https://webmention.io/andy-bell.design/webmention/1_-J54iEdKi7HM-JN8SY (twitter.com/_/status/1185165979413897225)
#
@therealkimblim ↩️ Pardon me for asking this Andy, but why was this tweet not added to the website and instead “deleted” as a web mention? Genuinely curious and not trying to step on any toes here.
https://webmention.io/andy-bell.design/webmention/1_-J54iEdKi7HM-JN8SY (twitter.com/_/status/1185166449033338886)
[jgmac1106] joined the channel
#
[jgmac1106] [manton] just saw you accepted my PR on the arabica theme, I will try and install and check out the mf2, we can follow the same pattern for the other themes

#
[Lewis_Cowles] answer to my question RE: SMS links https://www.ietf.org/rfc/rfc5724.txt
#
[jgmac1106] ohhh wow is it wasy to add a theme

#
[jgmac1106] manton++

#
[jgmac1106] this truly is the best CMS on market

#
[tantek] SMS << sms: links https://www.ietf.org/rfc/rfc5724.txt

#
Loqi ok, I added "sms: links https://www.ietf.org/rfc/rfc5724.txt" to the "See Also" section of /SMS https://indieweb.org/wiki/index.php?diff=65618&oldid=65370

#
[jgmac1106] manton++ on fixing up the theme

[manton] joined the channel
#
[jgmac1106] I filed another PR to add a missing u-photo to photo post, many people put the photo outside of e-content, not sure if required

jeremycherfas joined the channel
gRegorLove and [aaronpk] joined the channel
#
[jgmac1106] Yeah I was just noting common practice. The img in an article w/o u-photo. I need to test that

#
[jgmac1106] I tested article, photo, reply, note and then filed PR for u-photo. Pretty sure folks knew what I meant

[Yulia], [calumryan], [snarfed] and krychu joined the channel
#
[jgmac1106] manton++ looks like you went through and touched up all the other themes already++

#
[jgmac1106] oops

#
[jgmac1106] [manton] that is the Marfa theme, I am unsure if it is picking up the author correctly. Might make more sense to move the h-card to <section id="post-meta" class="clearfix h-card">

#
[jgmac1106] Or I wonder if it would make sense to add u-uid here: https://github.com/microdotblog/theme-marfa/blob/master/layouts/partials/profile.html

#
[jgmac1106] ooh maybe because the p-author lives outside of <article> where you have the h-card

#
[jgmac1106] I would have to ask but I wonder if adding <a class="u-author" href="/"></a> would trigger the authorship algorithm and pick up the p-author further down the page

#
[jgmac1106] I think it worked, author now being parsed as https://stream.jgregorymcverry.com/ and I think most consumers people use will display the h-card on the page

#
[jgmac1106] still might be a way to better think the the theme layout and just move <section id="post-meta" class="clearfix"> into the h-card

#
petermolnar beko[m]: another wave from another hetzner tenant

[jeremycherfas] joined the channel
#
[jgmac1106] going to move all the micro.blog theme testing to that slack so as not to spam there and inform audience

[KevinMarks], jfoster, [dougbeal], peatDiscord[m], [fluffy], gRegorLove, shoesNsocks, [Rose], [snarfed] and [jacek] joined the channel
#
[snarfed] hey [aaronpk] i have updates to https://aaronparecki.com/2018/06/03/4/url-form-field . are you maintaining it anywhere? i can revise just my copy at https://github.com/snarfed/oauth-dropins/blob/master/oauth_dropins/static/util.js , but it's obviously not an official upstream
[Zegnat], [jeremycherfas], jfoster and [aaronpk] joined the channel
#
[snarfed] my updates (just fyi) were to make the scheme configurable, trim whitespace, and stop on @ chars: https://github.com/snarfed/oauth-dropins/commits/master/oauth_dropins/static/util.js
[calumryan], gxt, live_, [dougbeal] and [tantek] joined the channel
kingpapa_ and [jgmac1106] joined the channel
#
[jgmac1106] anyone have an example of a video post with a caption file? Do you put the captions file outside or inside the video element?

[schmarty] joined the channel
#
[schmarty] jgmac1106: here's a weird example for you: https://martymcgui.re/2017/10/17/native-html5-captions-and-titles-for-audio-content-with-webvtt/

#
[schmarty] i know it's getting late for folks at Brighton but here's an auth thing i have on my mind.

#
[schmarty] i want to set up a group site that lets multiple people post, via micropub. so for micropub clients that'd mean letting them auth as the group site.

#
[schmarty] so for example, i start signing in as "https://indieweb.nyc" in quill, and the indieauth auth provider for indieweb.nyc presents me with another sign-in, where i sign in as my own domain.

#
[schmarty] since my domain is in the allow list, once i have signed in, the auth provider for indieweb.nyc says "yep, you're indieweb.nyc" and i'm signed into quill with that domain.

#
[schmarty] sknebel++ haha, thanks! now i need to figure out how much of indielogin.com i want to re-implement to get it done 😅

#
[schmarty] i could probably get by with just the authorization flow

#
[schmarty] sorry, authentication 😛

#
[schmarty] the one where they just need to prove their identity and i only need to find the one rel header 😅

[manton] joined the channel
#
[jgmac1106] schmarty would each person have a profile page on this site that could contain the one rel header/

#
[schmarty] jgmac1106: i think not!

#
[schmarty] to keep it as simple as possible, the auth endpoint for indieweb.nyc would be configured with a list of acceptable "me" values.

#
[jgmac1106] ahh okay

#
[schmarty] (i could see a version of this where the group site has a page with a list of admins on it, which the auth endpoint could use for that list)

kingpapa_, gRegorLove, gRegorLove_, [aaronpk], [KevinMarks] and [fluffy] joined the channel; LeFDiscord[m] left the channel
KartikPrabhu joined the channel
[snarfed] joined the channel
#
[snarfed] every time i see or hear "in the future," i mentally translate it to https://indieweb.org/YAGNI
[tantek] joined the channel
[dougbeal] joined the channel
#
@JoshuaOas ↩️ @jftzsmns @eleven_ty I’m in the same boat right now, I’m not going with disqus, I’ve settled on webmentions. (twitter.com/_/status/1185331662487543809)
[Rose] joined the channel
[Evan_Travers] and masternave joined the channel
#
[Evan_Travers] Tantek told me to bring this topic in here… I have a middleman static site that I’m in the process of tinkering with to join the indieweb… I noticed today that when I had the gzip option enabled in my build config, indiewebify.me couldn’t see the h-card or h-entry or any of the new classes I had added even though https://python.microformats.io could see it.
#
[Evan_Travers] I presently have gzip turned off on evantravers.com in order to get the classes and stuff right, but I thought I’d mention it in here. I’d be happy to help debug or what have you.