How does an Ionic 2 App work?

I’ve made MeteorJS mobile apps using Cordova and essentially they are webviews pointing to a website hosted on a server. In that case there is very little that is compiled to native except maybe some Cordova plugins and the webview. Changing the app is as simple as changing what’s on the server, in many cases.

Could someone point me to or explain the structure of an Ionic 2 app, what is compiled to native, what lives on the phone, and what lives on a server?

Are components like lists, buttons, and menus compiled down to native elements or is it essentially a webview running on the phone accessing webpages (html/css/javascript) that also reside on the phone?

Thanks!

It’s more or less html/css/js that are on a device and loaded into a native webview.