ionic uses scss/sass for there styling.
You can import the ionic.scss in your own scss file -> overwrite variables for colors, paddings, margins, borders, … and so on.
You can also use an own icon font very easily.
overhead… this is a very subjective question. If you are using it right it will not generates really overhead.
It has some special tags and structures but you will have this too if you are trying to implement it on your own.
But there is a whole team that takes care of it ;).
collection repeat is there to not show only 10 items at once… it is there to show all items fitting the viewport + 1 or 2
So if 20 of your items can be set in the viewport they should be visible (for ux reasons). if you try to scroll it could be that one you can parts of the previous/next item out of the viewport.
So you will a fixed number of dom-nodes e.g. 12 or 20
There is no way to exclude something, yet.
Maybe they build something in the future like bootstrap or jquery ui do.
But all in all the whole bundle has a size of ~300kb… and there is already angular, … included.
And you only load it once at the app start.
This is not an ionic issue.
I am using requirejs with some tricks to load external libs dynamically, like jquery, an own angularjs version, external directives and so on.
Chrome provides remote device debugging so you can also debug the execution on the device (mac-safari too ).
In modern browsers you have WebDev tools included or plugins like firebug for firefox (firebug).
There you can set break points, add logging and so on.
Ionic is based on cordova so you can build your app over the bash or serve it instantly to mobile devices and add watchers to automatically update app while programming and file changing.
But keep in mind… it is still beta and not even reaches final 1.0 … so if some points like creating custom packages disappoint you … this framework is young but very mighty. They have connections to angularjs team, so they are save for the future.