You cannot. There is no way to aggregate all the notes that may exist. We can get pretty close with a big network of nip66 monitors though.
Discussion
I intend on building a TikTok clone, and the way it will replicate the TikTok algorithm is to have a lightweight image recognition model and a speech-to-text model run locally when you upload a video, and generate kind 1985 (?) labels. Then it runs a local algorithm that chooses notes based on your interests. You don’t need to know about all the notes that exist, only all the kind 22 notes with associated kind 1985 labels
Sounds similar to what nostr filter relay does. Sounds nice!
I’m going to finish my degree and prove you wrong.
I think you're missing the point. Nostr works through countless asynchronous websockets. There is not such thing as a true "global feed" at an architectural level.
How does that prevent one from building an algorithmic feed? You could build it within your WoT and nobody could tell the difference
It doesn't it's just not an algorithm based on all the data available in nostr. That's the argument. Like I said, you can get pretty close with a good network of nip66 monitors. I made a bot recently to be a monitor if you'd like to check it out.
Is that how TikTok’s algo works?
TikTok has the ability to query all of the content on TikTok. Nostr does not have the ability to query all of the content on nostr, just all of the content on a set of relays.
Now that set of relays can be pretty massive, but it can never be ALL of them because they're countless.
Ah well yeah considering they run the servers. I don’t think you need that much content though. Ya know maybe a caching server isn’t a bad idea
It would be a very very large cache and you would have to seriously consider spam.
Yeah I might consider it down the line. First I need to finish my degree, then I need to build the app lol
I’ll start without any caching server, and probably without the algorithm and labeling features
The question is, how will you build it
That’s my question lol. I’m probably going to use and modify Olas code because that’s MIT license. I might build it from scratch though, idk.
I meant that language but if you haven't even considered that yet, then you're a long way off building
Oh yeah I actually don’t know how to code. Most I’ve done is build a calculator on android using Java , and a bit of JavaScript. I haven’t actually gotten to the CS stuff in my degree, I’m doing calculus rn.
But it’s going to be mobile first, so whatever the best languages are for android and iOS. But yeah it’s all just an idea in my head right now
If you want mobile then consider what platform. If you really want both then you might want to consider a framework like dart, flutter, react native or the new kid on the block lynx to build in a language that can compile to multiple platforms. Start learning about all these technologies now. Then consider pros and cons of each. Maybe make a simple app in each before picking one.
Yeah I might focus on just one platform to start. I’ll look into these. Btw I can’t zap you for some reason
What client?
I’m on primal rn
Gotta be something with the client. Works fine on amethyst and I wrote my own lnurl pay server. All the callbacks work properly. What wallet? The built in one? I'm trying to figure this out myself. You're not the first one with problems.
Yeah it worked on Nostur. I’m on iPhone, so primal is using the built in wallet, but Nostur is linked to my Alby node
Typical... nostr:nprofile1qqsdv8emcke7k3qqaldwv956tstu40ejg663gdsaayuuujs6pknw7jspp4mhxue69uhkummn9ekx7mqprpmhxue69uhhqun9d45h2mfwwpexjmtpdshxuet5qyf8wumn8ghj7ur4wfcxcetsv9njuetnn9mexk how does primal fetch my ln address?
Thanks for the zap! You won't see a receipt since my server doesn't send them "yet'
That's okay, I think few are used to "global" algo ranked posts anyway. Maybe on Reddit or YouTube, but for example on yt I either view the subscription time based feed or the home "for me" feed. The global trending feed is never interesting but that may be just me.
Whatever feed should probably be personalized which means only running algo on one's wot. Problem, I think is that's either self-host, subscription, or always running resource intensive app for a couple hops. There's wot relays, algo relays, personal haven relays. Be nice to get it wrapped up in a bun.
X has probably proved though people are willing to pay for the experience if it's worth it.