Here is a short report about the latest developments around the SteemSTEM dapp, steemstem.io. I am a bit slow in writing those reports, the latest one having been written 1.5 month ago… However, it is never too late to fill the gap!
This report details the tasks achieved within the last month, from the release of steemstem.io v0.8 to its current version freshly deployed yesterday (v0.9.13). All commits can be browsed from our GitHub repository, for those interested in the technical side (the app is open source).
The last part of this post focuses on the top items of our long to-do list.
Integration of Steem keychain
Until now, users had to go through SteemConnect to login to the app and start broadcasting operations on Steem. Since yesterday, a second option is available in the case where Steem keychain, a browser extension for Brave, Chrome and Firefox, is installed.
On the top-right corner of the app, there is now a dropdown menu allowing the user to choose how to identify himself/herself. If Steem keychain is selected, the latter will be used to vote, write, comment and resteem posts, edit comments and posts, as well as follow and unfollow a given author. Otherwise, the app will make use of the good old SteemConnect.
The control of the wallet still relies on SteemConnect, any transaction being validated externally from the SteemConnect dashboard. This will be manageable with Steem keychain soon.
Image / video embedding, link identification
Following this great post, it turned out that markdown/html conversions were partly broken, which yielded severe issues for image and video embedding.
The currently adopted strategy to deal with markdown/html conversion relies on two public packages, kramed and meteor-markdown. Those packages being not perfect and compatible with the summerlite editor used within the app, the display of several posts was broken.
I have implemented a new layer taking care of pre-processing the body of a post, so that markdown/html conversions are much smoother. In this way, usernames, links, images and videos are correctly handled and displayed, as shown below.
However, this created some minor issues on other posts, that were noticed much later. It turns out that the only fix consists in getting rid of kramed and meteor-markdown, and develop instead my own converter instead (currently on the to-do list).
Bug fixes and small things
I have also fixed several minor bugs and added a couple of features:
- The number-of-tag limit has been pushed to 10.
- Intempestive TOS prompts belong to the past.
- New filters have been implemented so that the displayed posts can be restricted to the top ones (trending) or best ones (hot).
- One minor bug in the paid post-promotion system (that no one uses… yet) was fixed.
The close future
Most importantly, we have decided on the priorities for the next couples of weeks, although nothing is frozen (please speak up to push for the development your favourite feature).
- Drafts cannot be saved for many weeks, due to the usage of deprecated methods. This will be completely redesigned (via custom json operations).
- The integration of Steem Keychain will be finalised (wallet handling).
- Post editing is badly coded and should be improved (this was my first significant excursion in the JS world).
- Markdown/HTML handling will be reprogrammed.
- The global design may change a bit (colour scheme, etc.).