Skip to Main Content
NetBox Plugin Ideas

Propose and vote for your most-wanted NetBox plugins!

Status Open Bounty
Categories Visualization
Created by Jeremy Stretch
Created on May 15, 2023

Provide a drag-and-drop UI for rack elevations

This plugin would offer a UI view showing the front or rear elevation of a rack (or potentially multiple racks) and enable the user to rearrange mounted devices by dragging and dropping them into the desired positions. Device locations would be updated in the database in real time. It should also be possible to remove devices from a specific rack face & position, but leave them associated with the rack itself.


Use case

This would enable quicker, more convenient rearrangement of devices within a rack.

Open items

We'll need to determine if it's feasible to reuse NetBox's built-in SVG rendering for this purpose, or if a custom implementation will be needed to facilitate live manipulation of the elevation drawings.

Bounty Tier $1500
Bounty Sponsor NetBox Labs
  • Attach files
  • Prince Kumar
    Reply
    |
    Mar 19, 2024

    I'm currently working on this plugin where you'll be able to customize multiple racks in the rack elevation feature, also I made some progress on it.

  • Alex Gittings
    Reply
    |
    Mar 13, 2024

    I have completed this bounty: https://pypi.org/project/netbox-reorder-rack/

  • Guest
    Reply
    |
    Dec 21, 2023

    It is really neccesary to have this plugin. Include the option to print in pdf and export en csv.

  • Admin
    Jeremy Stretch
    Reply
    |
    Jun 28, 2023

    A bounty has been offered for the implementation of this idea by NetBox Labs!

    Summary

    This plugin should enable users to graphically rearrange devices displayed within a rack elevation using drag-and-drop controls.

    Criteria

    • Users can reposition devices within a rack using a graphical interface with native HTML/SVG elements by clicking and dragging them to new positions.

    • Devices will “snap” into the nearest unoccupied rack unit(s) when not positioned outside of the rack.

    • Changes to devices should be pushed to the database only when explicitly triggered by the user. An example workflow:

      • User loads the rearrangement view

      • User arbitrarily rearranges several devices

      • User clicks “save” to push the updated device positions to the database

    • Users should be prompted to save any unsaved changes when navigating away from the reconfiguration view. Any changes not explicitly saved will be discarded.

    • Racked devices can be unmounted (detached from the rack) for easy rearrangement of multiple devices. Any devices not racked when the reconfiguration is saved will be designated as unmounted devices (with no face or position assignment).

    • When entering the reconfiguration view, unmounted devices with a non-zero height should be displayed beside the rack elevation for optional mounting within the rack.

    • Devices can be swapped to the opposite face using a graphical and/or keyboard control.

    • All device assignments must pass NetBox’s stock validation prior to being saved.

  • Pete Crocker
    Reply
    |
    May 29, 2023

    My last $dayjob was doing large greenfield DC deployments, and the requirements were constantly changing. We did all of the up-front DC planning in netbox, and I lost I have no idea how many hours of my life where a simple drag-drop could have been the answer.