An Angular directive for drag-and-drop sorting of grid items in all directions with multi-select support.
ng-sortgrid is an Angular directive that enables drag-and-drop sorting of items in a grid layout. It solves the problem of creating interactive, sortable interfaces by allowing users to reorder items in any direction and select multiple items for simultaneous sorting. The library provides built-in styling, auto-scrolling, and event handling for seamless integration.
Angular developers building applications that require interactive grid layouts with sorting capabilities, such as dashboards, admin panels, or content management systems.
Developers choose ng-sortgrid for its native Angular integration, multi-directional and multi-select sorting features, and minimal setup requirements compared to building custom drag-and-drop solutions from scratch.
🧐 A grid that allows you to sort all items via drag & drop. Items can be sorted in all directions (↕️ and ↔️). You can also select and sort multiple items at the same time by pressing ctrl and click on the item.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Integration is straightforward with a simple directive and array input, reducing setup time as shown in the 'Apply the directive' section of the README.
Supports Ctrl/Cmd click to select multiple items for simultaneous sorting, enhancing user interaction for dashboards or admin panels.
Provides CSS classes like 'ng-sg-dropped' and 'ng-sg-selected' for visual feedback during events, allowing easy customization without deep CSS knowledge.
Offers configurable scroll points and speed for long lists, with visual guides in the README for handling fixed elements like navbars.
With only one contributor listed, the library may have slower updates, fewer bug fixes, and limited community support compared to more popular alternatives.
Requires polyfills like 'mobile-drag-drop' for full touch support, adding extra dependencies and configuration steps for mobile applications.
Marked as 'Angular 10 ready' but lacks clear compatibility notes for newer versions, potentially causing integration issues with updated Angular projects.
No support for drag handles, custom drag previews, or virtual scrolling integration, which are common in more mature drag-and-drop libraries.