Me and my team at Comland are developing a hybrid mobile app (with Ionic) that basically uses SQLite as a data source to build a totally dynamic form that users then fill out. Forms are build out of sections and sections are build out of fields. Each field is a separate custom directive (like input, dropdown, etc.) that receives the setup object (ui.config) on init. The directives are totally reusable and they carry all the information to render (template, logic, validation, special functions, etc.).
But… Some of the forms that we build with this app can easily reach 100 + fields per page so we often encounter a frozen UI. Our code that outputs the form was organized in three ng-repeat loops in the form itself and we tried to replace them with quick-ng-repeat, use bindeonce and built in ::, but no serious improvement was made. UI still stucked. So there was a huge need for optimizing AngularJS app.