diamsa / nostrbounties

A nostr client for finding and posting Bounties
https://nostrbounties.com
MIT License
22 stars 11 forks source link

Commenting and pledges #8

Closed fiatjaf closed 1 year ago

fiatjaf commented 1 year ago

I was thinking that the current way of adding pledges with a kind:1 with just a number as the content is somewhat weird, as it makes no sense in other clients.

I think the best idea for nostrbounties.com would be to display all comments as comments -- this would allow people to say "I'm working on this" or maybe ask "what if I did x or y?" and, of course, to say "I've done what was requested, here is my deliverable".

At first it's not even necessary to build the actual commenting functionality, as that can be done on other websites, like https://habla.news/ -- but displaying them would be nice.

And then the extra pledges could be a special comment -- built automatically by the UI, that says "I pledge 500 satoshis". Just like it is today (with the special t tag and so on), but with the human-readable phrase that can show up nicely on other clients, like https://habla.news/. Then nostrbounties.com can parse the number out of these specially-formatted comments and count these.

In the future there could be a button for "submitting deliverable" in which someone who has completed the bounty can just paste a url and the UI would construct a special comment saying: "I've finished this: " -- I don't know, something like that.

diamsa commented 1 year ago

many people thought the same about the pledge comments, they need to be more descriptive. I spent some time thinking and these are my ideas: 1) we could have two sections below the bounty description component, one for a general discussion about the bounty and the other as a "personal" section where the bounty poster and the bounty hunter can comment on how is the project going, updates, changes (this is public information).

2) I noticed that anyone can say i am gonna pledge [X] amount of sats but it is just that, a promise, and I think it doesn't add a lot of value. In my opinion, pledge messages become relevant once [X] person truly adds [X] amount of sats somewhere. An escrow system could solve this, i think @vito Pamplona mentioned something about it.

Also, what do you think of a commenting system that uses markdown?

fiatjaf commented 1 year ago
  1. Looks good.
  2. This is a hard problem. Would be great, but I don't know how this would work. The site should work without it, and it can be something added on top.

I think we should just use kind:1 and that shouldn't support Markdown for various reasons.

diamsa commented 1 year ago

got it! I'll see what I could do in the next days

erskingardner commented 1 year ago

I'd actually started to work on something similar late last week and was coming back to it today. I think I agree with what you guys have said so far. To recap:

  1. It's a kind: 1 event.
  2. The content field should be a comment from the user or potentially auto-generated comment based on the action (e.g. "I've pledged [X] sats to this bounty [link]").
  3. No Markdown

That leaves 2 questions:

  1. Where does the amount value go? A tag is the most obvious to me. Since there aren't any standard tags that make sense we could use the same "reward" tag that the main bounty event uses? What do you think? Another option would be to use JSON in the content field (e.g. {"amount": 500, "comment": "This is my comment"}) but that would break compatibility with normal kind: 1 events.
  2. Making a change like this will break the already created bounty reply events out there because they have the amount in the content field. I'm sure we can handle this with some conditional logic locally but for any other clients that try and view/display these they might end up confused.
erskingardner commented 1 year ago

@diamsa – I think this can be closed?

diamsa commented 1 year ago

yes, I'm going to close it. Thank you for the contribution!