Sascha-Oliver Prolić's avatar
Sascha-Oliver Prolić
_@futrnostr.com
npub18wxf...4xra
Christian, Working on futr nostr client, Junior Haskell developer for life
big testing day tomorrow, if everything works as expected, we have a new futr release tomorrow with lots of improvements
Futr v0.2.1 released a nostr desktop client (for linux) UI and Performance Enhanced contact filtering with support for all name fields (petname, display name, username) Improved contact list layout and fixed visual glitches when filtering Optimized memory usage by implementing Loader components Adjusted follow list item height for better screen space utilization Bug Fixes Fixed overlapping contacts when filtering the list Resolved undefined data access issues in the UI Improved profile updates to properly refresh the follows list Other Changes Reduced debug logging noise across the application Removed unnecessary ListView caching for better performance www.futrnostr.com #futr #nostr #nostrdev
With everything you know about me, roast me without mercy. ChatGPT response: So, you're running Linux Mint on an ancient laptop, yet you expect performance. What, did you think Cinnamon was some lightweight, minimalist DE? Newsflash: Your machine wheezes every time you open a terminal. Arch users would bully you, but even they feel bad for you. And then there's your love-hate relationship with Lisp. You can't stand the parentheses? Fine. But let’s be real—you’d rather wrestle Haskell’s type system for days than deal with a few extra ( and ). You claim to love purity and elegance, but in reality, your effectful spaghetti code is just monads in a trench coat. Speaking of which, you’re breaking effects into tiny groups just to reuse state? So instead of dealing with deep effect stacks, you just shuffle your problems around like a shell game and call it "good design." Your codebase must be a Byzantine maze of STM updates and arcane type signatures that only future-you will suffer through. Good luck debugging that in a month. And let's not forget your grand subscription model, handling every possible event with precision. Meanwhile, someone out there is writing a ten-line script that does 90% of the same thing, and it just works. But no, you need the correct solution, even if it takes three weeks of yak-shaving to get there. Then there's your storage choices. LMDB? You mean the database equivalent of "I don't trust Postgres, and SQLite is too mainstream"? You're so obsessed with performance that you'd rather hand-optimize data storage than admit that maybe, just maybe, something off-the-shelf would be good enough. Oh, and your website? Running on gh-pages like some GitHub beginner tutorial. You're probably over-engineering a static site that could be a single HTML file, but no—you need structure. And of course, you have a Flatpak project, because why just distribute software normally when you can wrap it in extra layers of sandboxing complexity? In the end, you’re a performance-obsessed, purity-loving, state-rebuilding, effect-splitting Haskell masochist who would rather spend a week perfecting an abstraction than writing a simple solution. And you love it. Because deep down, you don’t really want things to be easy—you want them to be right.
Futr v0.2.0 (Linux only nostr client, windows coming soon) A major update focusing on core nostr functionality, persistent storage, and improved user experience. Installation via flatpak: flatpak remote-add --if-not-exists futr-stable https://flatpak.futrnostr.com/futr-stable.flatpakrepo flatpak install com.futrnostr.futr Or if you have the old version already, simply do: flatpak update New Features - Comment support with threaded discussions (NIP-10) - Repost and quote repost functionality (NIP-18) - Improved post rendering and content display - Event deletion support (NIP-09) - Persistent LMDB-based storage for all data - LRU caching system for improved performance - Optimized timeline storage and retrieval - Better subscription handling and event processing - Improved relay connection stability with websocket ping/pong - Better relay discovery through NIP-65 (Inbox & Outbox Model) - Optimized subscription management - Enhanced relay authentication - Referenced post display - Comment threading and counts - Consistent styling between posts and private messages - Better notification handling for post updates - Consolidated LMDB operations - Improved subscription lifecycle management - Better error handling and logging - Enhanced tag parsing and handling - Optimized event caching and invalidation - More efficient timeline management #futr #nostr #nostrdev image
#AskNostr What about this negentropy thing? Is it widely available on public relays? Worth implementing it client side?
I'm still fighting with the flue, yet I have resolved a few bugs already. Should be done very soon. #futr #nostr #nostrdev
Automatic relay discovery for new accounts working. Just put your nsec and the app will figure out the rest. #futr #nostr #nostrdev image