Just my two cents :D
- Many of those features require javascript, sooner or later we will have to make a decision on what to use.
If I'm not wrong, Moritz, in his project, implemented the search for related entities using select2, which requires jQuery.
Porting that implementation to crud would mean making crud jQuery based.
I don't know if it makes sense to provide a way to enable/disable js features or just let the user replace the template if he doesn't want to use them.
- On the add/edit nested feature has anyone ever looked at how is done in Flask-Admin and Django?
I remember having looked at the Flask-Admin source code some time ago and I didn't like much their solution of implementing nested forms by adding some hidden fields to the parent form with specific ids.
I didn't do much research on this topic, but it feels like it might be a perfect match for tgext.ajaxforms. It should be quite easy to load the forms of the child entity and submit them using tgext.ajaxforms. We probably just need a way to update the parent single select or multiple selection by adding the newly created entity on the fly.