PubKey Live 🔴 The Bass Load Energy Inaugural Edition with nostr:npub16amgefg0phkqkxtv4v49k96kmy9ypgka93h5vp4z7xd472dfc9nswc43ym and nostr:npub1fn2rvhmc3r8p7stpj20qcnk8em3wcqyz5cu0r5rmnh9ear76a4us3wedt9 starts now!
Discussion
Also streaming on Rumble:
nostr:npub1xtscya34g58tk0z605fvr788k263gsu6cy9x0mhnm87echrgufzsevkk5s nostr:npub16c0nh3dnadzqpm76uctf5hqhe2lny344zsmpm6feee9p5rdxaa9q586nvr nostr:npub1n0sturny6w9zn2wwexju3m6asu7zh7jnv2jt2kx6tlmfhs7thq0qnflahe nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z
Here’s a comparison of how zap.stream links display on the three clients I regularly use.
Out of all of these, Amethyst is the clear winner, with Nostur in second place. Damus and Primal for Android are tied for a distant third and Primal on iOS doesn’t even finish the race. (Damus and Primal display an ugly hyperlink. The link on Primal for iOS is actually broken. Nostur doesn’t display the thumbnail image.)
People are pushing for us to do more zap.stream content at nostr:npub1key55ax33gkl50uqemvl4khrtqrhzm7wzpc7fhseutt5ddkcwcrqgxlt3h but the user experience on the most popular clients is wildly inconsistent and in some cases completely broken.
What can we do about this?





*Four clients, I ended up including Amethyst at the last minute even though I don’t use it as much since I’m primarily on iOS.
Great comparison.
In my humble opinion, I don’t want any of those apps to be able to render zap.stream links.
Just send me to the website, and make the website better on mobile.
Instead of 5 developers spending their precarious resources on being compatible with zap.stream. 1 developer can improve the experience of the website OR make it a separate app.
Half of those clients don't even render the nostr event
Exactly. And when I start a zap.stream livestream I still have to manually cross-post it to most other clients because they don’t pick it up. I think Nostur detects it and shows it in the top of the app.
Well, you could get the vanity url for your channel from snort. Like zap.stream/npub. That will fix broken links in broken clients and your stream link remains always the same instead of having to share the new nostr event each time. Mine is zap.stream/thegrinder.
good suggestions.
The other thing that I should add is that there really aren’t any usable metrics available on zap.stream.
As a publisher, this is really important. If I can't see the total view count, average time spent watching, and other important details, I can't measure our results and use that to build on.
When I go back to see the stream after it's finished it doesn't really show me very much info I can use. This is not remotely professional level software yet.


Agreed. These are very important.
I actually forgot about that. We have this one but I think it doesn’t display the actual stream details in the clients that can render it. Will keep in mind for next time!
Oh, it’s this one actually…
You mean title and cover image for the current stream? Yeah, it doesn't.
I usually just share the nostr event on my timeline (rather than the http link) and that embeds fine in most clients. The http link breaks to much in "some" clients and I don't see why I should drop an HTTP website link for a nostr event. If you drop a nostr event it should natively embed in ANY app.
Yeah, I didn’t know how well that would work. Let’s see what happens.
nostr:naddr1qqjrsdf4x4nxxvrr94snwve5956rxdps95unxdmy94jk2ven8qcxgveh8yunqqg3waehxw309ahx7um5wgh8w6twv5hsz9thwden5te0wfjkccte9ejxzmt4wvhxjme0qyvhwumn8ghj7un9d3shjtnndehhyapwwdhkx6tpdshszrnhwden5te0dehhxtnvdakz7qghwaehxw309aex2mrp0yhxummnw3ezucnpdejz7qg3waehxw309ahx7um5wghxcctwvshsz8nhwden5te0dehhxarj94c82c3wwajkcmr0wfjx2u3wdejhgtcpz4mhxue69uhhyetvv9ujumn0wd68ytnzvuhsz9thwden5te0dehhxarj9ehhsarj9ejx2a30qgsv73dxhgfk8tt76gf6q788zrfyz9dwwgwfk3aar6l5gk82a76v9fgrqsqqqan89mq7q6
So on Damus the link doesn’t work at all.
maybe could have an alt tag so we could at least do https://github.com/nostr-protocol/nips/blob/master/31.md
It’s implemented pretty well in Nostur. Not perfectly, but you can at least see all the content.
exactly, they can barely get those working well, why expand?
Hard disagree. I want better Nostr native integration in the most commonly used apps. Why should I have to exit Damus to watch a livestream that’s also running on Nostr? Breaks the whole experience. Is what Amethyst does to render preview links somehow not possible on other clients?
are we talking about playing a video or providing a full live stream experience?
when im on nostr and someone is live streaming on youtube, i leave nostr and i am now on youtube, with the fill experience of links, live comments and likes on comments.
when im on damus, do you expect damus to render the video, the live comments, the live likes as well? if yes, they you are basically asking the devs to recreate zap. stream inside damus, amethys, primal etc.
then when im on damus watching a live stream, i dont need the rest of damus anyway, i am not engaging with this type of content, so why would it matter if im being transfered to another app?
this is where the design model of #notedeck starts to make more sense, there is already an alpha verison of zap.stream on notedeck
I don’t walk around with my laptop open.
indeed. good thing it works on mobile and is a responsive app!
Will be nice when notedeck apps can register themselves as handlers, so when you click these links in the columns app, they open in the full featured zap stream app.
This is a bit different than the vitor model where each apps share an on-device relay which is not possible on ios. In this case they all share the same in-browser relay, which has best performance.
Its clear I still have a lot of work to do to explain what notedeck is 😅
Best way i can describe it is it allows many devs to build very high performance apps in isolation by coding to a nostr browser environment. these apps will be able to talk and interact with each other within the notedeck browser via the local relay.
The environment is just a shared nostrdb instance and things like image cache, relay pool, immediate mode ui context. Wayy simpler than the bloated browser stack, and is specifically designed for interoperable nostr apps that you can jump between easily.
Best user experience, video and chat wise, is watching on zapstream or noStrudel. Both embed all sorts of nostr events and noStrudel also embeds images and gifs. Most clients talk about how cool interoperable apps are but they only interoperate if your APP actually lives up to the nip and kind standards.
nostr:npub1ejd9gpnqtzx9q6hhv6jt4xf9lgmn9x744rd5ep663p3h78lps3yqm9mf0l I actually just suggested to Kieran to change the "share on nostr" to share the nostr:ID event rather than http. It makes no sense and at least the stream will embed correctly in any client supporting the event. Meant to suggest the change for a while but kept forgetting and your screenshots just showed me how important it is.
You got me to revisit Nostur again. Agree with primal btw


