Bookmarks for Steemit – Step 1: Hivemind Update

moecki -

I first introduced the idea of bookmarks for Steemit about four months ago. Four months is usually a long time for a feature like this. But if you consider that I'm doing this alongside my work, the family and the interaction here on the Steem, I think that's pretty good.

I'm proud to say - and this is not really my style - that this is the first feature update in a few years.
So I'm all the more pleased to be able to tell you today that I've now submitted the pull request for the first step, which will add bookmark storage to the Hivemind code.
The 2nd step is the update of the Condenser, which is the Steemit interface, with which the bookmarks can be set by the Steemians. Unfortunately, without the Hivemind update, the Condenser update is useless. Therefore, I have to wait with the 2nd step until the Hivemind code has been updated.

Modifications

  1. a new table hive_bookmarks was created, in which the necessary data are stored (user, post_id and timestamp).
  2. the database is now running in version 21.
  3. as I already explained in my first post, the interaction and storage on the blockchain is realised via custom_json operations. The syntax of the operation is already described there and has not changed.
    The processing of custom_json operations has been extended to include the handling of bookmarks.
    The operation already contains a category field for later extensions, but this is currently not used.
  4. addition of a new request bridge.get_bookmarked_posts with which the bookmarks can be queried from the Steemit frontend. At least the account for which the bookmarks are to be queried must be specified here. Further optional parameters for sorting and pagination are also provided.
  5. last but not least, the data returned for posts has been extended. There is now an additional field bookmarked_by, which contains the accounts that have bookmarked the post or comment. This is required for the frontend.

Tests

I tested the code after completion both in terms of migration and functionality.
To do this, I have a testing hivemind node running on which I was able to test the modifications. I used a live database backup for the migration test and started it with the new code. The migration was successful and I was able to set and remove bookmarks with the (almost) finished condenser code.

Notes

To be able to use the function with the Condenser at some point, the code update must be added to the Steemit nodes. For this I ask @ety001 and the Steemit team @steemcurator01 for appropriate attention.

I will only submit the updated Codenser code after the database has been migrated to version 21... and I have integrated my edits into @the-gorilla's new code :-) Therefore, a hint would be very helpful. I can be reached via the known channels (Github, Steemit, Discord-ID: moecki).

Many users have requested the function and I am convinced that it can improve the user experience on Steemit. I can say that because I am not only active as a developer, but also as a blogger on Steemit.

My wishes

To Steemians:

Share/Resteem this post, write about the new feature, etc... so that as many more users as possible find out about it and we can collectively convince the Steemit team of the new feature. Here you can see a live demo:

To other developers:

Take a look at the custom_json operations and integrate their content on your frontends or data services. In the best case scenario, we can provide users with a cross-frontend user experience. Bookmarks that are set on steempro.com, for example, could also be displayed on steemit.com and vice versa.
I would like to mention devs @steemchiller @faisalamin @h4lab @happyberrysboy / @upvu @etainclub and @boylikegirl.wit as examples.

And then...

There is potential for improvement in many places in Hivemind. I already have one or two places in mind. Even if there might be better technical possibilities for such a database at the moment, the majority of users use this service indirectly by using steemit.com. We should therefore also try to make this more attractive.

So: Support me with your witness vote for further developments... :-D

Steem Search on https://moecki.online/

My Full Node on https://api.moecki.online

My Python Pricefeed for Witnesses

Thanks for your Witness Vote

02.05.2024