Short polling in the background + notifications for DMs incoming from private / auth enabled relays. Other than not trying to write all of my notes to the inbox and DM relays, as mentioned by nostr:nprofile1qqsw9n8heusyq0el9f99tveg7r0rhcu9tznatuekxt764m78ymqu36cpzdmhxue69uhhwmm59e6hg7r09ehkuef0qy2hwumn8ghj7enjv4h8xtn4w3ux7tn0dejj7qg4waehxw309aex2mrp0yh82arcduhx7mn99ueat4s3, this is the single quality-of-life improvement still missing for me. As for longer-term features, I would vote for having a build with an embedded, pre-configured "native" Android relay, à la Citrine, exposed to the Internet with a public reachable onion address and pre-configured with sensible filters so that every Amethyst client also becomes a self-sufficient personal relay out of the box. This would be the dream.
The public inbox relays should receive your notes if you are tagged on them. So all your replies, likes, zaps etc go to your inbox as well. New notes shouldn't. Because a reply cites a post, that goes also goes to your inbox/outbox to make sure your follows can find it when loading replies from you.
Got it. I think that currently new notes might be going to both the Inbox and DM relays. Also, I may be wrong, but I believe that aside from notes I'm tagged in and my own activities (self-replies, likes, zaps), Amethyst is also trying to write the original notes I'm interacting with, as well as various other types of notes, to the Inbox and DM relays. Here's what I mean: https://image.nostr.build/425654e44b9ca698cbeaba4ce636ed7d33efce0b7e7a1bb0d206104a132773f8.jpg https://image.nostr.build/4fdd34bf52f56c7f9bdde0ffc479e675f252955d94fbc42c5af9874f8bea343a.jpg https://image.nostr.build/519b9d931795da513d79c251bbcebe0bcf4825cf4af28c7a61033b5c264e04e3.jpg
On the relay side, I think that is a feature for Citrine itself, since Amethyst is not supposed to be a relay.
I can always dream of a future with embedded relay functionality in a Nostr client, just like what you implemented for Tor. In my opinion, every client acting as a personal relay would be an awesome experiment for Nostr resilience and decentralisation. Citrine is almost there—I exposed it publicly over Tor and IPv6 for several weeks befored it was spammed into ooblivion —but it's not something that the average person will do unless it's part of a pre-configured build, unfortunately.
But then if you use 10 clients, you get 10 duplicated databases. It's not an efficient way to use nostr, especially if we start using more micro clients.
I get the microclient argument and certainly agree for folks who are deep into the Nostr ecosystem. However, in pratice, I only use Nostrudel and Highlighter on PC, and Amethyst on mobile. I would be happy for Nostrudel and Highlighter to write to my "Amethyst relay" and duplicate my notes to it and Haven, assuming my mobile has connectivity (I was already doing this with Citrine, but exposing Citrine to inbound traffic isn't the best idea yet). What I'm trying to say is that it would be awesome if every Amethyst installation (and maybe every Damus installation), could optionally act as a personal relay. 1m+ relays are a lot harder to attack than a few centralised relays. Maybe what I'm really looking for is a "P2P Nostr" kind of experiment.
Why did they spam it to oblivion ? What's the reason they do it? Do they actively choose to spam that specific relay? Or did they just run scripts to follow the path of least resistance and you unprepared to filter them?
I can only speculate, as I didn’t have any sort of observability on Citrine (this was before Citrine had its own log screen). Besides the spam, it also felt like a DDoS attempt—Citrine was handling a large number of metadata events, such as kind 0 and 10002. To be fair, I wrote several messages on Nostr about my Citrine + IPv6 experiment, including the fact that, due to some misconfigured test scripts, I had accidentally “self-spammed” my Citrine relay and It was surprisingly resilient, so I may have brought this upon myself. However, this isn't the only reason I wouldn’t expose Citrine to the Internet as is today. Currently, it’s not using TLS OOB (which is understandable, as it wasn’t really intended to be publicly accessible, but it also means running an external https enabled reverse-proxy if you need encryption, which sorta defeats the purpose of a "portable" relay). I also had difficulty using Citrine’s built-in filters effectively.