I just broadcasted my 30040 books to my local relay with Nostrudel, and downloaded them to the client browser-cache. So, that already works. Can be read offline.

nostr:npub1s3ht77dq4zqnya8vjun5jp3p44pr794ru36d0ltxu65chljw8xjqd975wz is using Nostr to break entire books into parts, upload the parts, transmit them across the globe and download them on the other side of the planet, reassemble the parts in the correct order and display them as a single document. Those books are now being quietly spread to relays all over the planet. Drip, drip, drip.
We can even put the different parts on different relays and then pull it together in the client, seamlessly. Once we include local relays in the relay management possibilities, you can download the books in seconds to your phone or tablet, and read them offline.
And it's fast. And we haven't even tried to make it faster, yet. π€―
Discussion
Locally-stored publications transmitted over relays
Bless youπ
It sort of blew my mind, last night, when I realized that this is essentially using websockets like FTP because you can transmit any document, from any computer with a network to connection, to any other computer with a network connection, no matter how large or complex. Just have to break it into chunks, with a predefined order, with 30040s (or as a static linked list, but that'd be a different app).
And we have it running. Pretty cool.
Like, you could transmit #sheetstr or a longform article, or a set of slides, from your laptop to your cellphone or tablet, over any network your relays can handle.
Fucking incredible
This may be a dumb question, but it popped in my mind when you said that,
How does this relate to tech like holepunch, pear, with apps like keet?
Wish keet would actually open source so we can see what they're doing , but bitfinex has no incentive to do this of course (all the money in the world for their devs/subsidiaries)
I'm sorry, but I'm not familiar with those apps.
Keet: a P2P group chat app, powered by holepunch & pear
Holepunch: P2P platform for building apps
Github: https://github.com/holepunchto
Pear: P2P development & deploy tool by holepunch
Github: https://github.com/holepunchto/pear
The stack is;
Keet is the top level UI/UX app for users
Running various pear deployments
Holepunch is P2P base layer protocol
Tbh I still don't know how this works but have been on a mission for years to figure out how to actually connect from one device to another, truly P2P. They seem the closest to getting there, but we all (the users) have silently agreed we really don't know 'how' they're doing it (since keet is not FOSS) so how can we trust them?
Just use bluetooth or a USB cable, with relays on each device.
Yes, but moreso Need more so for global communication
Like HAM, meshastic or better yet, reticulum (which can use anything not just LoRa)
Yes. This is the second (or third) implemention of doing this
Wonder if I can do that with #Citrine, on my phone. Need to try that out.
Then you could read publications you've downloaded, on Amethyst, even when offline. If nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z implements them, of course.
We need to make Citrine faster, but yes it should work.
Turns Amethyst into an e-reader.
I'm most excited about the e-paper reader, as I love using those. Great for vacation.
nostr:nprofile1qqs827g8dkd07zjvlhh60csytujgd3l9mz7x807xk3fewge7rwlukxgpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszrnhwden5te0dehhxtnvdakz7auvdel I'm storing my books on your little relay. I hope you don't mind. π
Not sure if users are going to be able to upload book titles or if users will readΒ from what is offered eventually. I immediatley think of requesting a title for an ecash payment.
Both. They can upload to their own relays or to thecitadel (which we don't charge for). They will also be able to setup zap-to-decrypt on their own uploads to theforest (which is paid), but we have to figure out how to build that, first.
nostr:nprofile1qqsg6d9aysezgrzkxut550d3jxrch2suzvawcuumvj3xgfvlg997x2cpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszrnhwden5te0dehhxtnvdakz7qgewaehxw309aex2mrp0yh8xmn0wf6zuum0vd5kzmp0lhqp8l was talking about that, recently.
We're going to be mass-importing all of the off-copyright titles we can find and format, as well. But only after we get this first release done.
The world is full of free books. Let's put them on Nostr.
Anyone interested in helping, can go ahead and start uploading to thecitadel.nostr1.com with the ebook utility.
I really like the idea of reading on nostr, rather than web.
I was commenting that it would be excellent if when a web url was pasted into a note that the article itself would format as a long form note on nostr rather than taking me to the web.
Oh, yeah, that would be sweet. Probably not even that difficult, since you can convert automatically between HTML and Markdown or Asciidoc. But the devil is always in the details. π
Have you tried just clicking on this, on your cellphone and then scrolling down? It goes on and on.
Less than 9 seconds to download all of that, and then you could read it offline. Like, I can't get over it. π
You could download entire libraries to your cellphone and highlight and comment all over it, and embedd bits into your notes, when chatting. Bonkers.
Events are so crazy lightweight and relays are so wicked fast.
Watch out for the book police! π. More books, more formats, more MORE! i was thinking to myself about an indestructible print book. we have the technology. why are there not more formats available???
Could you maybe have an ai comb over project gutenburgs website a lot of free classic books are there
Yeah, that's where I get the test material from. We'll have to automate it, more, to get high throughput. I'm slow. Took me about 30 man-hours to do the Bible, even using multiple parsing scripts.
Yea, essentially the main issue with performance on citrine was that I was not using suspend functions in the room dao operations, it would lock the database until a query completes and it would not cancel coroutines when needed.
I haven't done any benchmarks but using lmdb from rust-nostr seens faster, don't have the 100-200 memory limit of android apps but I loose everything else like flows, group events by kind etc
Haven't tried nostrdb yet
Using sqlite I still have to test if I can improve some index and I always have to remember of the memory limitations, if anything tries to get all events from a big database I have a oom and the app crashes
Okay, I uploaded a 30040 to localhost on my laptop, broadcasted it to thecitadel and now I'm going to download it to Citrine, on my phone.
nostr:naddr1qvzqqqr4tqpzplfq3m5v3u5r0q9f255fdeyz8nyac6lagssx8zy4wugxjs8ajf7pqydhwumn8ghj7argv4nx7un9wd6zumn0wd68yvfwvdhk6tcpr3mhxue69uhhg6r9vd5hgctyv4kzumn0wd68yvfwvdhk6tcq9fex2mrp0ykhgetnwskkcmmrv9kxsmmnwskky7fdwd6x2mrvvykhvttvda3kzmrgdaehgnarx8s
Success. Ebook download to mobile relay worked seamlessly.


It's actually gone ahead and downloaded a bunch of books. Citrine is clearly hungering for more books. π

This is awesome
I'm totally preoccupied by #offlinestr because our local mobile Internet is so dodgy and expensive, and the Wi-Fi in our house is slow.
Also, I just like downloading everything and reading it later, wherever I am. Take some eBooks and eMagazines on the flight or on vacation. Catch up on your DMs from the subway station.
Or just send a document from one machine in my house, to another, over LAN or short-range. What about over #meshtastic?
Nostr public relays make most sense as a transmission medium between local storages.
If looking for persistence in the cloud better use a web server.
But "get me this epub onto my reader right now", Nostr looks great π
#Offlinestr let's goooow πͺ