Before you we go any further, I'd invite you to read this post on chainbb.com:
It's been in the making for a while, but I'm excited to announce the beta release of chainBB, a functional forum interface currently on the steem blockchain. Last January I created a prototype of this design on SteemDB.com and received an overwhelmingly positive response. As soon as life settled down a little after my move, I started working on the full fledged prototype that would meet the needs of the Steem community.
The beta version of chainBB will exist here for the time being:
Emphasis on Discussions
My goal in building chainBB was to bring a product that was focused very deeply on engagement. It can be hard to keep up with a busy discussion using a reddit-style interface having to hunt-and-peck at responses as they come in. Luckily we have the Steem blockchain, and it's possible to build new interfaces! chainBB is focused on the concepts
single-threaded, chronological ordering. Every new response to a thread will bump that thread to the top of it's respective forum(s), and all posts are displayed in chronological order, with newest being last.
With discussions being the primary focus of the site to begin, you'll notice many features and pieces of information that are missing from chainBB. These features can come in overtime, or perhaps they're not needed and better left to a reddit style discovery platform such as steemit.com. As the product evolves, we'll be able to make these decisions based on the needs of whatever community uses it.
- First tag priority: The forums are based off of the FIRST tag used in any post. Each forum has a set of tags associated to it, and for a post to be included in a specific forum, it's first tag must match one of the tags in it's list. You don't have to use them all, just one, as the first.
- Sign-in: You can currently log into chainbb with your posting keys only, it won't accept any of your other keys or your master password. There's a link on the sign-in form with a guide showing how to find your posting key.
- Voting: Every post is displayed with a vote button and a dropdown caret to adjust your voting weight.
- Posting New Threads: At the top/bottom of each forum, there's a button to create a new post for that forum. The top of the page shows a list of tags, which one of which must be included (as the first tag) for the post to appear in that forum.
- Posting Replies to Threads: While reading a thread (a post + it's comments), you can click on any post to leave a reply. Whatever post you choose to reply to will be it's parent in the steemit-style threaded discussion, and if you reply to anything besides the original post, the post you replied to will be quoted in your post.
- 1% Post Rewards Beneficiaries: All posts created through the forum will have 1% of it's rewards split off to the @chainbb account. I personally don't have a stockpile of cash to donate to infrastructure/work time on the project, so this small amount of earnings will hopefully help pay the bills. I am including this in the features list to just ensure it's existence is known.
- Forum Groups: On the left under the login, and across the top, are what I'm currently calling Forum Groups. With chainBB, we have the ability to create totally separate portions of the forums that may appeal more to specific audiences. Currently the
General Forumsare geared towards the general public, and the
Crypto Forumsare geared towards those interested in blockchain technologies. More forums and groups will come online as we discuss what would be nice to have!
Still needing improvements
- All account management and account profile pages link to steemit.com.
- Currently it's impossible to downvote/flag on the site
- The content editor is a simple textbox at the moment, and could be improved upon. It should make due for testing though, as this is a forum, and most likely advanced formatting isn't as important. But things like a markdown helper, wysiwyg, preview, editing, and image support could all be in the future.
- Needs much better server infrastructure to live on, as it's running on one of my crappy backups right now. It may crash because I'm posting this.
- Posting currently takes about 10 seconds to submit, wait for a block, and wait for the forums to process it. This can/will be improved overtime, and a lot of it will boil down to having a better server setup.
- None of the social features are enabled (Follow/Feeds/Block/etc).
Technology behind it
While I'm relatively new to a few of the tech stacks that steemit.com uses, I tried to keep chainBB.com using similar technology to allow for collaboration between teams. chainBB is built with a React/Redux frontend, using steemit/steem-js for connectivity to the blockchain. The backend is a simple REST API + MongoDB for the custom indices, along with a service layer to keep the database updated. Both of these are written entirely in python using steem-python and flask.
The code is available on github.
This project isn't incredibly old and I'm still pretty green with react, so don't hate too hard :)
Give it a try, post some feedback!
I'd encourage you to give it a shot, and let me know what you think! Feel free to reply to this thread, or you're more than welcome to post a new thread in the chainBB - Feedback forum here:
You could also just write a post on steemit.com, but make sure you use the #chainbb tag as your first tag, or it won't be included.