Hersir 1) create them after images are loaded (ok to create feather app and add theme later ?)
Feathers UI lets you switch between themes at any time with
Theme.setTheme(), so you can certainly do this, if you'd like. One thing to note is that, until your custom theme is instantiated, the components will all start out using the default styles. Assuming that you intend to hide everything with some kind of loading view until the images are loaded, then it doesn't really matter because once you switch themes, they'll be restyled automatically.
Hersir 2) load images before even creating app (thats what I do in my old starling as3 version)
You can use OpenFL's asset system. Just register your images/assets in your project.xml, and OpenFL will not start the app until they complete loading. (it provides a default preloader, but I think you can customize it, if needed). Use methods like
Assets.getBitmapData() inside your theme to access the loaded assets.
Hersir what is most preferable way there ?
Either approach is fine. Option 2 is probably easiest.