Setup and Widget Start - nni-odoo/howtos GitHub Wiki
_References: defining module, client action.
Setup
All the assets, related to xml and scss files should be included in the assets.xml file and inlcude it in manifest under data.
Creating Widget/Client Action
Every widgets in js should be put on static/src/js/ and include in assets.xml. Define the widget. declare imports before anything.
Client action is an extension of widget such that you can register the client action to open it as a view. Client action is created through AbstractAction and defining template which should be an existing template in xml, with appropriate t-name.
Don't forget to add it to action registry. You can refer to it inside menuitem with action.