Custom Dashboard Widgets Manager

I’d like a WordPress plugin that allows me (the admin) to easily create, manage, and reorder custom dashboard widgets inside the WordPress admin dashboard (/wp-admin). The plugin should:

Add a new menu item: Dashboard Widgets

Allow me to:

Create new widgets with a title, rich text content, and optional icon

Choose who can see each widget (role-based visibility)

Reorder widgets via drag-and-drop

Toggle widgets on or off without deleting them

Support shortcodes and basic HTML in the widget content

Inherit WordPress admin theme styling

Include one prebuilt welcome widget on plugin activation

All data should be saved using WordPress options API (no custom tables)

Plugin should be single file if possible and follow best practices

Future wishlist: Export/import widget configurations and color styling per widget

The goal is to create a lightweight but powerful way to customize the dashboard experience for different users, especially helpful for client sites.