Hi @mannansamcom,
Well, as per the recursive you need to fully customize it. For e.g.,
You already mentioned the component i.e. packages/Webkul/Velocity/src/Resources/assets/js/UI/components/sidebar.vue. You are getting full categories with its child categories from sharedRootCategories method.
The major challenge you will face is the template part i.e. design. You need to do a recursive loop till categories.children not equal to the blank array.
For better information, you can console log the categories in formatCategories method.