The Widget dev will be the biggest thing, that's why we didn't doc custom widget dev until now. There are going to be more changes and updates, but if we don't doc it, we don't recommend it.
In next the release, we are also adding a guide to help new users set up a TypeScript development environment.
Here is a demo app I put together that shows a Widget with a ViewModel. ViewModels are basically just extending Accessor. You could write a ViewModel without TypeScript and just implement Accessor in regular JavaScript.
GitHub - odoe/esrijs4-ts-demo
Here is a sample widget in our Widget framework.
esrijs4-ts-demo/summary.tsx at master · odoe/esrijs4-ts-demo · GitHub
If you are not comfortable using TypeScript for development, you don't need to use our widget framework. It doesn't provide any advantage or integration with the API in any way. It just happens to be what we use. We also need to provide the doc for other teams external to the JSAPI team that write widgets.
But I could have easily written this in regular JavaScript without our widget framework, just using a ViewModel that implements Accessor to watch for updates.
I have similar samples here in regular JavaScript.
GitHub - odoe/gen4: Sample EsriJS 4 Application from generator-arcgis-js-app
GitHub - odoe/esrijs4-vt-palette: Demo app of using Color Palettes with Vector Tiles