TIDAL Embeds - full-length playback using Nostr authentication and open sourced!
1/ Add your npub to your TIDAL account
2/ Add a NIP-07 extension to your browser, for example nos2x
3/ Load the TIDAL embed player, login, sign and enjoy
https://tidal.com/browse/playlist/c9d2b85a-a121-4bd6-a296-c5ad2fd9b8dc
Not seeing a TIDAL Embed? Help us, or your Nostr client, to fix it!
Login to reply
Replies (77)
It worked :)
Unfortunately I can't play any music with the free account :(
But this commitment to Nostr might bring me back to the premium account...
When login/registration with Nostr?
https://account.tidal.com/login
I will have to hurry to finish zerologin! 😍
Whoa, open source! Cant see npub in the web player?


Found it!


This is awesome! Is this just for the web player or is it possible in the app as well?
👀
Great progress!!
Some feedback:
Primal - didnt embed
Snort - embed worked, login seemed to work, but could not hit play
Nostrudel - no embed shown
Coracle - no embed shown


After refresh worked on snort, woo!
This is awesome. Just added my npub.
Thanks! Auth with Nostr is currently only available in our embed player.
is this free or does it require a subscription?
Minor thing: when entering the npub in the web UI, it displays the hex key. I prefer hex personally, but artists being artists may want some vanity npubs.
The best way to make a vanity npub is with rana :
> rana -n stefan

GitHub
GitHub - grunch/rana: Nostr public key mining tool
Nostr public key mining tool. Contribute to grunch/rana development by creating an account on GitHub.
Maybe in a future update?
Brilliant work. Been trying to get SSO at web scale working 10+ years.
What is event kind 9467?
You may want to look at NIP98 which was created for the single sign-on use case

GitHub
nips/98.md at master · nostr-protocol/nips
Nostr Implementation Possibilities. Contribute to nostr-protocol/nips development by creating an account on GitHub.
We started making this before NIP-98, so we created the 9467 kind event for our use case. I suppose we'll check NIP-98 out and see if we can replace it with that. :)
Awesome work. I'd highly recommend NIP-98, if you at all get a chance to look at it. It's just an auth header to a server, and it scales really well. The extensions can already sign events, so it's easy. NIP07 is used in a bunch of places, and I use it in nosdav for personal storage too. I see this pattern scaling to billions of users.
This little shim contains all the code
https://www.npmjs.com/package/nosdav-shim
Nosdav
Cloud storage for Nostr
Huge kudos, thank you 😄🙏
Awesome!
can i get zapped from tidal as an artist ? when a pleb is listening to my music from the embeded player? https://tidal.com/browse/artist/18086061
That's pretty cool 😎 🎶
There is also a proposal for NIP-97 by @semisol which uses NIP-98
I added support for this in Nostur but there are no websites or services that support his yet.
GitHub
NIP-97 Login with Nostr by Semisol · Pull Request #1042 · nostr-protocol/nips
This spec proposes a simple login flow to allow easy authentication to services like nostr.build without having to deal with DM verification or oth...
If your website requires login, consider adding login with nostr.
Demo:
NIP-97: Login with Nostr: https://github.com/nostr-protocol/nips/blob/login/97.md
View quoted note →
NIP-97: Login with Nostr: https://github.com/nostr-protocol/nips/blob/login/97.mdWow you’ve been working on this for over a year?
Glad to see it come to life!
Stopped supporting free accounts a little while back
Which mobile client will add this first?
Dearest @Vitor Pamplona, the Master of NIPs, I humbly request this feature in Amethyst.
@stefanmoro, any thoughts on adding Nostr status updates to TIDAL web and mobile to show the song that you're currently listening to?
Can we use a native ExoPlayer in a similar way?
Some other projects had to come inbetween but happy to finally get it out! 🥳
Not sure I understood this. It looks less secure than NIP-98. If it relies on NIP-98, why not just log in with NIP-98? NIPs generally are against 2 ways of doing the same thing.
It is logging in with NIP-98. NIP-97 just defines the flow between the website or service and another app that has your key.
can one pay for tidal with btc?
i dont have tidal or spotify or youtube premium or soundcloud 😞
i am in commercial land
Nope
npub added! I’ve been a Tidal customer since before it was called Tidal. Love the Dolby Atmos support.
Check out this recording produced by me, available in high res
Ps: We need a “share to Nostr”-button


Music on TIDAL
Valen vokalensemble - Jeg synger julekvad
Watch Jeg synger julekvad on TIDAL

Not right now. Maybe they'il add this at some point.
you need a subscription.
Worked great. very cool!
Are there plans to have more nostr features and possibly lightning zaps integrated with tidal in the future?
you have to go to the tidal website and in the account settings you will see it.
bummer
Just Tidal integrating #theNostr
Are you paying attention?
TIDAL Embeds - full-length playback using Nostr authentication and open sourced!
1/ Add your npub to your TIDAL account
2/ Add a NIP-07 extension to your browser, for example nos2x
3/ Load the TIDAL embed player, login, sign and enjoy
https://tidal.com/browse/playlist/c9d2b85a-a121-4bd6-a296-c5ad2fd9b8dc
Not seeing a TIDAL Embed? Help us, or your Nostr client, to fix it!
View quoted note →
Just signed-up to the family plan - this was the nudge I needed!
Goodbye Spotify.
Running TIDAL.
TIDAL Embeds - full-length playback using Nostr authentication and open sourced!
1/ Add your npub to your TIDAL account
2/ Add a NIP-07 extension to your browser, for example nos2x
3/ Load the TIDAL embed player, login, sign and enjoy
https://tidal.com/browse/playlist/c9d2b85a-a121-4bd6-a296-c5ad2fd9b8dc
Not seeing a TIDAL Embed? Help us, or your Nostr client, to fix it!
View quoted note →
What about Tidal paying artists direct for streams with transparent accounting and no middle men?
Wow. Glad to see that you've been working so long on this. I hope we can see additional integrations, such as status updates with the current song we're listening to 🥹
Thats amazing actually
TIDAL Embeds - full-length playback using Nostr authentication and open sourced!
1/ Add your npub to your TIDAL account
2/ Add a NIP-07 extension to your browser, for example nos2x
3/ Load the TIDAL embed player, login, sign and enjoy
https://tidal.com/browse/playlist/c9d2b85a-a121-4bd6-a296-c5ad2fd9b8dc
Not seeing a TIDAL Embed? Help us, or your Nostr client, to fix it!
View quoted note →
Hi @Vitor Pamplona, we currently only support this functionality in our embed player. Possible to get it into Amethyst somehow? We're open to suggestions: 
GitHub
GitHub - tidal-music/embed-player
Contribute to tidal-music/embed-player development by creating an account on GitHub.
No :(
We don't java a JavaScript engine inside the app like web apps do.
But you do have a native app for Android, so I am sure you have a native player somewhere to opensource. :)
Tidal’s metadata needs improvement and better opengraph integration, it’s the reason folks won’t see a play button on tidal links where they will on spotify links
Yes, I want this as well!
Had quite the challenge on primal… can see multiple tries on my profile ✨
Is it something you can find interesting at TIDAL?
"Login with Nostr"
dolu (npub1tx…7phrl) on Nostr
Short Text Note by dolu
Zerologin PoC
- OAuth2
- OpenID
- Nostr
#buildinpublic
https://m.primal.net/IYgJ.mov
Out of curiosity, what clients currently support the embedded player?
NGL this is pretty damn cool.
https://developer.tidal.com/blog/tidal-embeds-the-other-stuff-transmitted-by-nostr
"It is now possible for TIDAL users to connect their Nostr and TIDAL accounts in the Account Dashboard. A Nostr account consists of a keypair created with the Schnorr signatures standard for the curve secp256k1.
A private key and a public key represents your Nostr account. The private key is your secret password which you do not share with anyone. The public key (npub1) is your official “address” which lets users find you to follow you or share content with you on the network. By providing the public key in your account settings, we can map your TIDAL account to your Nostr identity."
What does this have to do with the Embed Player?
By providing the public key in your account settings, we can utilize the previously mentioned NIP-07 specification to identify you as a TIDAL user, and let you login in through the Embed Player. I previously mentioned that the Embed Player only plays previews of TIDAL content - so you might see where this is going. 😉
We’re happy to announce that as of today TIDAL Embed Player supports logging in with Nostr - and if you’ve connected your account in the profile settings - you will be granted 🎉 full length playback 🎉.
This gives an even richer experience on the web for you, especially on the previously mentioned social applications running on Nostr. Sharing a TIDAL link in a post will now show the Embed Player and you - and other TIDAL subscribers - will have the ability to listen to the full track right in the post!"
#cybersecgirl
https://developer.tidal.com/blog/tidal-embeds-the-other-stuff-transmitted-by-nostr
TIDAL Embeds - full-length playback using Nostr authentication and open sourced!
1/ Add your npub to your TIDAL account
2/ Add a NIP-07 extension to your browser, for example nos2x
3/ Load the TIDAL embed player, login, sign and enjoy
https://tidal.com/browse/playlist/c9d2b85a-a121-4bd6-a296-c5ad2fd9b8dc
Not seeing a TIDAL Embed? Help us, or your Nostr client, to fix it!
View quoted note →
👀
I'm not seeing Tidal Embed. Using Alby.
would you WANT to use Bitcoin for that? Maybe down the road, but for now I'll use dirty fiat
yes, web only for now. should be pretty easy to get working on any web based clients.
We're working on opening up more of our APIs, and I hope that it'll be possible to build such functionality on our platform soon.
We'll post updates here:


GitHub
Build software better, together
GitHub is where people build software. More than 150 million people use GitHub to discover, fork, and contribute to over 420 million projects.
We're using oEmbed.com, snort supports it and hopefully other web based Nostr clients will too.
Cool, totally makes sense! Thanks for your hard work! 💪
Well, yeah, doxxing yourself via linking your npub to your bank isn't ideal
We did open source our mobile sdks (including players) just recently and are working on opening up additional access and functionality on our APIs. If webview or similar isn't an option for you, it should soon be possible to hack something together natively.

GitHub
GitHub - tidal-music/tidal-sdk-android: TIDAL SDK for Android
TIDAL SDK for Android. Contribute to tidal-music/tidal-sdk-android development by creating an account on GitHub.
correct. https://account.tidal.com/profile
👀
I don't think it is supported just yet on Primal. I see there is an open request for it: 
GitHub
TIDAL Embeds (and all other with OEmbed?) · Issue #76 · PrimalHQ/primal-web-app
Summary Doesn't look like Primal uses OEmbed to embed rich content. So sharing for example a TIDAL link does not present an embed player instead of...
👀
In order to play full length content you need a subscription. Without a subscription, you'll be served previews/clips.
Thanks for pointing this out! Deployed a fix so that you get preview/clips served also with free/intro account. For full length, a subscription is needed.
👀
Appreciate the response. Don't really want to pay for new subscriptions RN, but if yall put in nostr wallet connect subscriptions and NPUB signups I will reconsider.
I do have a Tesla with the Tidal app and it would be badass to have a Bitcoin-Nostr based audiophile platform in there.
thanks! tetragrammatuned with TIDAL🌊🍫 🙌🏼🤩 💫✨
#tunestr
@atephanmoro I think it worked! Shared my newest release via tidal here a few days ago ✨
Was wondering what a kind 9467 was! Totally late to the party but congrats @npub1q9pe...vcqf ! Ecstatic to see this in action. 💜🙏😊
@stefanmoro is this feature still supported? I added npub to my tidal account. I then tried to login to tidal from snort by clicking your embedded track (using alby extension) and got this error

