Mazin's avatar
Mazin
_@mazinkhoury.com
npub18kzz...x5sz
Used to play poker now I build things and fly planes. 🍷 relay: wss://nostr.wine 🎥 relay: wss://creatr.nostr.wine Filter and API: https://docs.nostr.wine Translations: https://translate.nostr.wine
Mazin's avatar
Mazin 2 years ago
All nostr.wine relays will start enforcing NIP-42 AUTH for DM REQs (kind 4) soon. If your client does not support NIP-42, everything else will still work normally but you will not believe able to receive DMs through our relays.
Mazin's avatar
Mazin 2 years ago
We’ve built a prototype “inbox” relay with limited read access. If you’re a client developer experimenting with giftwrapped events/private chats/DMs and want to test out please let me know and I can whitelist pubkeys for you. Current relay design (seeking feedback): - if kind is 4,1059,9735, 65000, 65001 and pubkey is an active inbox user, we accept the event
- if kind is 1984 and pubkey is active inbox user, we automatically delete the reported event IF the pubkey reporting it is p-tagged in the reported event - Auto accept 23195, 24133, 27235 - Auto accept kind 5 from authors - Anyone can write without auth as long as the p-tagged user has an active inbox - All REQs require AUTH. Once AUTH is successful, user can only query events they authored or are p-tagged in. You CAN query for another author + your pubkey p-tag
Mazin's avatar
Mazin 2 years ago
With the latest Damus TestFlight build (and coming to the AppStore as 1.6 soon) you can now select 🍷 translate.nostr.wine directly in Settings > Translation. uses DeepL for high accuracy translations without KYC or any signup hassle. Simply generate an api key, deposit some sats, and add it to Settings > Translation! Additional features: - Auto removal of invoices, hyperlinks, other untranslatable characters before deducting credits from you and sending it to translation - If target language = source language, translation is skipped and credits are saved image
Mazin's avatar
Mazin 2 years ago
Here are the🍷nostr.wine products/experiments @Katie and I have built so far over the past 8 months on nostr: - nostr.wine (paid relay, 4 regional mirrors) - filter.nostr.wine (aggregator/broadcaster/follows+follows filter) - welcome.nostr.wine (greet new nostr users) - cellar.nostr.wine (long term storage for vintage notes) - Search (NIP-50, API, Kibana) - Translate (LibreTranslate compatible API) - Trending Notes API - Relay Status Page - Event Checkr - Topic Classifier (inactive, needs redesign for cost saving) More to come :)
Mazin's avatar
Mazin 2 years ago
Introducing 🍷 cellar.nostr.wine - long term pay per use storage for your vintage notes! Why? - Most relays do not accept very old events - Some relays periodically purge old notes (NOT nostr.wine!) - Offline backups/private relays are not viewable by others - Fiatjaf told me to do it How does it work? 1. Add to your pubkey balance on 2. Send notes to the relay using any backup service or nostr client (no created_at limits) 3. As our relay receives your notes it will charge your balance a pro rated annual fee per note (1 sat per note/year) 4. Your notes are stored and indexed by the relay as well as automatically backed up and available for rapid export at anytime 5. You will receive DM reminders when your balance starts getting low and when renewal fees are due 6. Anyone can add wss://cellar.nostr.wine to their nostr client and query historical notes Cellar automatically rejects the following event kinds: 4 (DM), 6 (Repost), 7 (Reaction), 1064 (File), 1984 (Reporting), 9735 (Zap), and all ephemeral events. Authorized delete requests are always honored and never charged. Kind 0, 3, and 10002 events are stored without charge from paid users. Duplicates events will never be charged. 

Future improvement ideas: - Customized exports (choose which event kinds to include, timestamp filters, and file type options) - User controlled kind allow-lists for billing (only allow kind 1, for example) - Browse the Cellar (Frontend to browse old events with a date picker. See what people were talking about on a specific day in history.) - Search the Cellar (NIP-50, our API, and Kibana) - Import tool that lets you export events from filter.nostr.wine to the Cellar
Mazin's avatar
Mazin 2 years ago
Visiting some family this weekend - a great excuse to fly! image
Mazin's avatar
Mazin 2 years ago
I’m thinking I’ll work on some type of npub authenticity rating next. Don’t have it figured out yet, but planning to use some of these: - how repetitive is their kind 1 content? - Kind distribution - Tag distribution (only replies vs only root posts, mentions, what is normal mix?) - Age of account - Age of oldest follow, age of newest follow and the delta - Centralized NIP-05 provider w/ bad reputation - Profile very similar to existing one (impersonators) - Mute lists - Kind 1984 reports (spam only) - Link in every post? Known bad links? Other ideas?
Mazin's avatar
Mazin 2 years ago
If your client supports NIP-42 AUTH, consider adding an option to turn it on/off per individual relay. I think there are many great use cases for AUTH (protecting some/all REQs) but always responding to any AUTH from any relay can exacerbate the user/relay privacy problem.
Mazin's avatar
Mazin 2 years ago
“Hi Mazin, Our Data Center Team has identified a cooling malfunction on the rack where your server is currently stored.” How’s your evening going?
Mazin's avatar
Mazin 2 years ago
It’s true. Pick relays that are serious about uptime and performance. That’s how we select filter.nostr.wine broadcast relays. Reliable fast relays we’ve used for months: - wss://nostr.wine (paid, shameless plug) - wss://nos.lol - wss://relay.damus.io - wss://relay.snort.social (paid) - wss://relay.nostr.bg - wss://offchain.pub - wss://nostr21.com View quoted note →
Mazin's avatar
Mazin 2 years ago
Reminder: many nostr clients do not validate event signatures. Choose your relays carefully. Good morning.
Mazin's avatar
Mazin 2 years ago
Treemap of the top 30 note topics we’ve classified so far from nostr.wine over ~12 hours of kind 1s. I suspect we are over labeling technology a bit but then again everything is technology. image
Mazin's avatar
Mazin 2 years ago
How much do we care about relay query speed vs note retention? On a big aggregator like filter.nostr.wine, I could probably improve performance significantly by only serving the last 3 months of notes instead of our full history. Worth it?