chainBB v0.2 - posting system revamp (with reward beneficiaries!!)

The most common bug reported lately has involved strange error messages and losing posts - which is probably one of the most frustrating situations that a user can encounter. This week my primary focus was on alleviating this issue and at least reducing some of the pain points around this issue, and rebuilding the posting system to support some brand new features (hurray reward beneficiaries!).

Today marks the release of chainBB v0.2, which will be a series of updates focusing on refining the user experience and tidying up the code. Before we dive into that though, for those of you who are new...

What is chainBB?

chainBB is a discussion forum style interface on the Steem blockchain. It uses many of the same mechanics that uses, but presents the information in a much different way. All posts on the Steem blockchain are available via chainBB, just as they are on

The beta is currently active and running here:

Want more information? Here's a few posts to get you started:

v0.2 - TLDR

This will end up being a somewhat length post, so here's a brief synopsis of the updates below:

  • Post Rewards Beneficiaries is implemented for everyone now. You can specify a percentage of your earnings to go to any number of different accounts.
  • When writing a post, drafts are automatically saved for that input and will automatically repopulate in the event you need to reload or change pages.
  • Overhaul of a lot of the forum UI, splashes of color, and some shifts in backgrounds to divide components.
  • The tags that each forum follows are displayed in the header.
  • The post creation system got an overhaul, with a simple presentation to begin and tabs for advanced options.
  • You can no longer remove the tag required to be in the forum posted from.
  • You can now select whether to be rewarded in 50/50 SBD/SP, 100% SP, or to Decline Rewards while creating a new post. This cannot be edited after you post.
  • When submitting a post, you can now cancel the processing interface and the draft will be saved while the page reloads/reconnects.
  • Replies with negative vote values will now be hidden by default, and can be expanded to show.
  • Even more new forums have been deployed - keep the suggestions coming, and I'm sorry if I haven't gotten around to all of them yet! It's been difficult to keep up with the demand.
  • The best for last... CTRL+ENTER or ⌘+ENTER will now submit the post you're writing!

Forum Headers

The above screenshot shows the new forum header layout for the Sports Forum. The headers were redesigned to distinguish them from the forum posts listed within it. Each forum represents a collection of posts on the Steem blockchain that use specific tags as the first tag, and these tags are now displayed in the header. In the upper right it also displays who manages the specific forum you're reading, which for the time being, is the @chainbb account.

The sub-forums are also now bundled into the header of the parent.

Future plans for this include being able to expand/minimize the sub-forums, information displays involving the communities maintaining the forum, and any additional details surrounding it's use.

The new post creation display

As I mentioned in the opening of this post, the majority of the work for v0.2 went into refining the post creation system. The screenshot above shows the new tabbed interface for creating a post within a forum. The interface is now divided into 3 parts: Post, Tags, and Rewards.

The posting screen itself is the required information to create a new post within the chosen forum.

Posts now automatically save as drafts as you're working. If you leave the page or reload, the notification (as shown in the upper right) will pop up to let you know it's loaded one of your drafts for this post. The "Cancel" button is now "Cancel & Delete Draft", which will remove any saved data you may have left behind on this post.

Also, you can now press CTRL + ENTER or ⌘ + ENTER to submit the post you're writing! In my opinion, every website needs to do this, because once you get used to it you find yourself trying to submit forms this way everywhere :)

The Tags editor

The second tab of the new interface shows info about how this post will be categorized. By default, chainBB automatically includes the first tag (aka the category) based on which forum you are posting in. This category tag can no longer be removed.

Additional tags can be added using the box on the right. It's a little different than in that you must enter each tag individually, then either press enter or the "Add Tag" button. This will create a tag label over on the left under "Additional Tags", and to remove a tag, just click the x to the right of it's name.

The Rewards configuration system

This is one of the most exciting changes (IMHO) of this new version: configuring the distribution of rewards from your post! This can only be done while creating a post, and cannot be changed after the post is live and submitted.

Since there's a lot to talk about on this part of the system, the next 4 screenshots will cover the individual portions and explain them in more detail.

Reward Methods

Just like on, now on chainBB you can specify how you'd like to receive your rewards. There are 3 options:

  • 50%/50% (Default): This is the default payout method that we're all familiar with. The author receives 50% of the rewards as Steem Power and the other half as SBD (or Steem, if the SBD debt ratio is too high).
  • 100% Steem Power: This option rewards you entirely in Steem Power. I wouldn't recommend this currently, but the option exists. Right now with SBD trading well above $1, the community needs to generate all the SBD it can in an attempt to help balance the peg.
  • Decline Rewards: The last option is that you can decline rewards all together.

chainBB will not remember your selection by default (maybe in the future), so you will have to set this for each post you wish to change. It will however save as part of your draft in the event you need to navigate away from the page.

Rewards Beneficiaries

On the right is a brand new system, the Post Rewards Beneficiaries system, which was introduced in HF18. This feature lets you share the rewards of the post with any number of other accounts, split by percentage. This is useful if you co-authored a post with others, want to donate the rewards to another account, or are supporting a community initiative and want to give them a piece of what you earn.

The interface itself has a few elements:

  • The Add Button - When clicked, the interface in the next screenshot will be shown to guide you through the data required.
  • Distribution Table - The table element displays the accounts you have configured to receive rewards. The account name is listed, along with 2 percentages. The first (larger) percentage is the representation that account's entitled rewards, and the 2nd smaller percentage shows the actual percentage after the chainBB rewards beneficiary split.

I've added some explanation text as well around the interface to hopefully help you figure it out as you're using it.

Note - the original author of the post receives a reward based on the Reward Method (as shown in the last screenshot), while all other authors receive rewards as 100% SP. This is something I'm pushing for a change to. I feel that if you're splitting the rewards of the post with someone, there's no reason they shouldn't be rewarded just like the author of the post.

Next up, when you click the purple "Add" button...

Adding a new Beneficiary

This screen lets you specify a new account to split the rewards with. Two fields are required:

  • The account name
  • The percentage to split

The maximum percentage remaining (100 in this example) is displayed below the form. This number represents the unallocated percentage, which by default, goes to the author. Adding any additional beneficiaries removes the percentage from the original author.

For the purpose of this example, I am going to enter the following information:

  • Account: paxmagnus
  • Percent: 50

Once added, it looks like...

Distribution Table

The distribution table now updates to show both accounts, mine and @paxmagnus, both with 50% of the rewards distribution. I could add more accounts with the remaining percentage to create a different distribution just by clicking the "Add" button again.

You can also remove accounts from the list by clicking the red trash icon. Currently there is no way to edit a percentage, so you'll have to add/remove them until you get the distribution you want.

This interface isn't going to check the validity of the accounts you've entered (at least so far), so make sure you enter the correct account names and percents. You cannot edit this information after you've created the post!

The Submission Loader

With the explosive growth of Steem over the last month or two, the public servers providing access to the Steem blockchain have been under load. This has caused disconnections, missing posts, and other errors that would cause this screen to get stuck.

So now there's a cancel button on it. If this loading page takes longer than say, 15-30 seconds, it's probably stuck and you're disconnected from the blockchain.

Hit the cancel button and the page will reload, and thanks to the new drafts saving system, once it's reloaded your post will still be there.

Please note that you need to reopen the form you were filling out (whether it be for a new post or a reply to someone's post) in order to get the draft to reappear. I don't have the interface setup to automatically reload which post you were editing (yet).

Hiding and Revealing "Low Quality" comments

One of the things that does is hides posts when they get flagged more than upvoted.

chainBB now does this as well, and injects them in-line as these small dividers with a button to reveal them. Clicking the button will cause the post to pop in to it's appropriate position allowing you to see what's been flagged and hidden.

100% of the Rewards from this post go to @steemfest

I figured what better way to announce the availability of the new Rewards Beneficiaries system than using it. 100% of the rewards generated from this post (well, technically 85% due to the chainBB split) have been directed to go to the @steemfest account (as seen here), as my way of supporting the 2017 SteemFest event. @roelandp has done an incredible job organizing this event last year and again this year and deserves the support.

Thanks to you all!

I didn't expect to receive so much support when I set out to build this forum tech - and just wanted to say thanks to all of you participating. Currently around 150 users are using the site daily to write posts, and I have no idea how many of you are using it to read.

I have some big plans coming up after the core of the forums is stabilized and improved - 2017 is going to be an exciting year for blockchain powered social media!

$ 0.002 SBD