←back to thread

367 points lemonberry | 3 comments | | HN request time: 0s | source
Show context
macawfish ◴[] No.24641169[source]
I recently stumbled across "shoelace", which at a glance seems like an example of what the article is hoping for. It's a thoughtfully designed library of UI web components.

https://shoelace.style/

replies(3): >>24641310 #>>24641427 #>>24642064 #
dheera ◴[] No.24641310[source]
... and it suffers from the same oversight every other web component library (polymer, mdl) suffers from:

- I can't swipe left/right between the tabs

- I can't pull the menu out from the left by swiping the entire page right

Two of the most basic touch navigation metaphors aren't supported. To be fair, Polymer and MDL don't support the above either. But this is why HTML5 apps are still not up to par with native apps. I really want to see a web component library with full touch functionality -- tab swiping, pinch zoom on images, pull to refresh on lists and card lists.

https://shoelace.style/components/tab-panel

replies(3): >>24641433 #>>24641512 #>>24645921 #
coder543 ◴[] No.24641433[source]
> it suffers from the same oversight every other web component library (polymer, mdl) suffers from:

> - I can't swipe left/right between the tabs

> - I can't pull the menu out from the left by swiping the entire page right

Most native apps don't do either of those two things either... at least on iOS. I can't speak to how Android apps behave these days.

Maybe these are your favorite interaction modes, but it really has nothing to do with whether X is "up to par with native apps."

I'm certain these things could be implemented. Clearly they weren't considered desirable by the authors of Shoelace.

What really holds HTML5 apps back is the fact that Apple consistently drags their heels on adopting push notifications for web. It only has to be available for apps that have been added to the home screen, so all the users who complain about getting nagged for notifications as they browse the web would still be perfectly happy not to be getting nagged. Without notification support, the number of companies who seriously invest in HTML5 apps (instead of native apps) is nearly zero, which really hinders investment in HTML5 frameworks targeting mobile app development (not frameworks just targeting mobile website development).

Clearly, Apple benefits from pushing app developers into the App Store where they can require those developers to give them a cut of the profits.

replies(3): >>24641955 #>>24641986 #>>24647921 #
robocat ◴[] No.24641955[source]
> I'm certain these things could be implemented.

Pulling a menu out from the left certainly cannot be implemented on iOS Safari Mobile, because it doesn’t support https://caniuse.com/css-overscroll-behavior

Supporting swipe left/right fails hard on iOS Mobile Safari because the browser wants to history navigate back/forward if you misplace your finger, and it is easy to inadvertently refresh the page unless you are very careful not to. I don’t think there is any effective workaround.

replies(1): >>24642074 #
dheera ◴[] No.24642074{3}[source]
> Pulling a menu out from the left certainly cannot be implemented on iOS Safari Mobile

Well HTML5 apps will never be a good experience on iOS then. On Android you can do almost anything UI-wise with Chrome, which paves the way to HTML5 installable apps.

replies(1): >>24642112 #
coder543 ◴[] No.24642112{4}[source]
My hot take: hamburger menus are a really bad UX paradigm in almost all cases, and bottom tab bars are much better.

So, I disagree entirely: iOS can easily support fantastic HTML5 mobile apps... if push notifications ever become available.

From what I remember, Google started switching to bottom tab bars a couple of years ago, even on Android. But, when you have a bunch of features, it's much easier on the developer (not the end user) to just stuff them in a hamburger menu and say "eh, good enough..."

Link that seems relevant, but I've really only skimmed it: https://uxplanet.org/tab-bars-are-the-new-hamburger-menus-91...

replies(2): >>24642237 #>>24642539 #
1. dheera ◴[] No.24642237{5}[source]
Side note -- I do wish iOS would get ahead with Bluetooth and WebRTC support, both of which I use heavily on my (private) HTML5 apps.

Push notifications would be necessary for a complete feature set too, although I don't really use them for my private apps since I disable almost all push notifications on my phone.

replies(2): >>24642300 #>>24660584 #
2. coder543 ◴[] No.24642300[source]
https://caniuse.com/?search=webrtc

I think WebRTC is supported on iOS? Maybe it's missing some important features? I'm not personally familiar with what's going on there.

Web Bluetooth doesn't seem to be going anywhere fast, for better or worse.

3. hackerfromthefu ◴[] No.24660584[source]
Its clear Apple wants to force people to native apps where they can extort, err charge, 30% (of the revenue, much larger share of the profit).

So these features almost certainly won't be delivered, in a working state, until they are irrelevant to making useful apps which could move money out of the ios appstore.