Yo. I've released the alpha version for Coop, which fully rewriten to Rust, using GPUI and Rust Nostr. Please help me test it, I’d love your feedback.

Current features:

- Basic NIP-17 chat functionality

- Login via Nostr Connect or Private Key

- Lightweight UI with tab support and split layouts

Download:

- GIthub: https://github.com/lumehq/coop/releases/tag/0.1.0-alpha

- Other: https://web.crabnebula.cloud/lume/coop/releases

Thanks nostr:npub1drvpzev3syqt0kjrls50050uzf25gehpz9vgdw08hvex7e0vgfeq0eseet for making NIP-17 simpler in nostr-sdk.

Reply to this note

Please Login to reply.

Discussion

Trying with a new key I get "your messaging relays is not updated": should be "are", not "is".

And then when I click the "update" button the app crashes with

thread 'main' panicked at crates/app/src/views/relays.rs:101:22:

called `Result::unwrap()` on an `Err` value: entity released

Trying to message myself at NIP-05 "fiatjaf.com" says public key is not valid. "_@fiatjaf.com" doesn't work either, same message.

"npub..." worked fine.

I sent a message to fiatjaf and it showed up on Gossip, but Gossip didn't pick the metadata of this key I just created nostr:npub1jnatjw0ac4mf6aeadq8g422pmvfv0hqv7yervlqaj5upjank0npqc4xnpl (although the metadata is on purplepag.es and that is configured as "discovery" for me on Gossip) and Gossip also said it was using NIP-04 but I thought Coop was just NIP-17? nostr:npub1acg6thl5psv62405rljzkj8spesceyfz2c32udakc2ak0dmvfeyse9p35c

In any case neither the initial message nor my response showed up on Coop.

I see on purplepag.es kinds 10050 and 0 for this user. I don't see kind 10002. Without 10002 as a starting point, gossip doesn't know where to go looking for kinds 10050 or kind 0.

πŸ‘€

The UI is very good. I don't know why aren't other Rust apps using this framework, or maybe you're the genius who made this one work so well. Is this immediate mode or not?

I love NIP-17, but I think we'll need something like this: https://github.com/nostr-protocol/nips/pull/1647

Since you're in the trenches implementing this stuff, can you take a look and see what you think about it whenever you're bored?

πŸ‘

Impressive!

Look into Whitenoise by nostr:nprofile1qqspwwwexlwgcrrnwz4zwkze8rq3ncjug8mvgsd96dxx6wzs8ccndmc2ymgxf. It’s an attempt to add signal-quality encrypted messaging to nostr. All the messaging code is in rust. I bet we could evolve it into a library that coop could easily consume.

https://github.com/erskingardner/whitenoise

What is Coop all about?

Hi, Coop is a client that focus on NIP-17 (direct messages)

cool 😎