.bitter

Read every word if you decide to test. These will be worthless. Use at your own risk.

This is just a fun experimental standard demonstrating that you can create off-chain social media with inscriptions. It by no means should be considered THE standard for social media on bitcoin with ordinals, as I believe there are almost certainly better design choices and optimization improvements to be made. Consequently, this is an extremely dynamic experiment, and I strongly discourage any financial decisions to be made on the basis of it's design. I do, however, encourage the bitcoin community to tinker with standard designs and optimizations until a general consensus on best practices is met (or to decide that this is a bad idea altogether!).

Idea

Experiment to see if ordinal theory can facilitate social media on bitcoin

  • Create a .bitter username

  • Create a "post" function

  • Create a "reply" function

A name.bitter post can be found by searching for the user/post via a index like unisat, for example. A poster can find replies by searching all "reply" that reference the Ordinal # of the "post" Inscription.

◉ name.bitter initialize user handle

EXAMPLE: SatoshiNakamoto.bitter

◉ "post" create a post, followed by :"content"

EXAMPLE:

{ "username": "name.bitter", "op": "post", "content": "This is a sample post content." }

◉ "reply" create a reply to a post. "reply" will reference the ordinal inscription ID of a "post"

EXAMPLE:

{ "username": "name.bitter", "op": "reply", "ordinal": "123", "content": "This is a sample post content" }

Operations

As I mentioned above, this is just my fun experimental standard design. I welcome anyone to improve upon the design, rules, or compression issues it poses. For traceability json {} are required for all functions except claiming of user names, as well as the minimum required information to satisfy one of the functions.

Deploy .bitter handle

SatoshiNakamoto.bitter
KeyDescription

.bitter

Username.bitter Only lowest inscription # is the valid .bitter user name

Create .post

{ "p":".bitter",
  "username":"SatoshiNakamoto.bitter",
  "op":"post",
  "content":"Sample",
}
KeyRequired?Description

p

Yes

Protocol: Helps other systems identify and process .bitter events

username

Yes

Helps identify the user posting

op

Yes

Operation: Type of event (Post, Reply)

content

Yes

The content of the post

Create .reply

{ "p":".bitter",
  "username":"SatoshiNakamoto.bitter",
  "op":"reply",
  "ordinal":"34b174f9fe3027d4ab8f2bb7f9e320259e596306d751cc0c09e7b4906f4d1ddbi0",
  "content":"Sample"
}
KeyRequired?Description

p

Protocol: Helps other systems identify and process .bitter events

username

Yes

Helps identify the user being replied to

op

Yes

Operation: Type of event (Post, Reply)

ordinal

Yes

The Ordinal ID number of the post you are replying to

content

Yes

The content of the post

Notes

  • Have fun!

  • Only the lowest username inscription # is valid

  • replies to a post can be searched by searching your handle and viewing any replies that reference the ordinal # of your post inscription

  • There are no limits on content length

  • Usernames.bitter have a tentative cap of 21 bytes, subject to change by community consensus.

  • This is an experiment.

  • There is NO FINANCIAL VALUE TO ANY .bitter INSCRIPTIONS

  • This is my ONLY contribution to .bitter, the community will HAVE to do the rest, including indexing etc.

  • There is no leader for .bitter

  • Don't be bitter if this takes off!

  • 🟧🧡🟧

Last updated