I believe this would depend on the specific problem you’re aiming to solve with the dashboard plugin. As a starting point, we have the following documentation that outlines the development process:
https://www.gooddata.com/docs/gooddata-ui/latest/references/dashboard_component/dashboard_plugins/#current-limitations
While it doesn’t go into great detail, since this can vary depending on the complexity of your plugin, it should give you a solid foundation. In general, the steps to develop, test, and deploy the plugin remain consistent.
Please have a look, and let us know if you have any questions. Just a heads-up that GoodData Support typically focuses on break/fix issues, but we’re happy to take a look if you encounter any difficulties.