New Nodes' Structure — How nodes work on Hashnode now

Nodes are sub-communities in Hashnode. For example, there's a node for MobX — hashnode.com/n/mobx

You can tag posts with nodes, and the post will show up in the respective node community page, and in the feeds of all people who follow those nodes.

We have been receiving a lot of requests of late for creating new nodes in the system. We have also realised that manually creating, and approving node suggestions from others, is not a scalable solution.

So we went back to the whiteboard to rethink our approach towards nodes; and over the past week, we have made significant changes to how nodes behave on Hashnode.

Hashnoders who have been with us for a while might know that nodes were tightly controlled entities within Hashnode, and creation of a node is something that only happened after it was approved by a Hashnode Team Member.

Nodes here, nodes there, nodes everywhere ✨

We have removed the concept of this approval process. So, anybody on Hashnode can now create a new node, just by simply tagging a post with something completely new.

For instance, let’s say you want to share a link about Prettier. If you tag your post with Prettier, and if Hashnode doesn't already have a Prettier node, it will be instantaneously created, and the corresponding community will be available at hashnode.com/n/prettier

Once a node is created you can also apply for becoming a manager of that node for gaining moderation powers of this node, which for now include — the ability to make cosmetic changes (name, logo, description, etc...) to the node's community page, and the ability to untag irrelevant posts tagged with this node.

Once the system detects that a node is getting traction; i.e., as more and more people start using that node to tag their posts; this node will show up in search, and autocomplete tag suggestions.

TL;DR: You can now tag your posts with whatever you think is the most relevant tag, without any restrictions!

The "duplicate node" problem 🤔

One of the core problems with making the tagging process open was, this — different people might refer to the same technology using different names. Say, I prefer to tag a ReactJS post with ReactJS, and someone else might simply prefer to tag it with React.

Even though we have used different tag names — ReactJS and React — the subject topic of both the posts is the same; and in the old Hashnode system these would have been two different nodes, with two different community pages — hashnode.com/n/ReactJS and hashnode.com/n/React

To tackle this, we have created a sophisticated node-merging system. Let me quickly explain it with a simple example. Once a node called React is merged with another node called ReactJS:

  • hashnode.com/n/React would be redirected to hashnode.com/n/ReactJS
  • all of the posts that are tagged with React will show up in hashnode.com/n/ReactJS
  • if you were a follower of the node React before, after the above merge you would also be a follower of ReactJS
  • even if you continue tagging posts with React, your posts will be considered while calculating your ReactJS rank

In fact, the above example is a real one, and all of the above points are true as of this writing.

The node merging feature is currently available only to the Hashnode team, and we are still thinking about how to open it to other members of the community.

Let us know of your thoughts, feedback, and suggestions in the comments; and tag away, tag everything! 👏

Write your comment…

Nice Job! Last week I sent the moderation team an email for creating a node which I guess developers should have been switched to & other guys are also on the way... These new tweaks to the node moderation system are wonderful. Well done! Keep optimizing, As we keep tagging !

Reply to this…