Ionic 4 - virtual scroll and capacitor


#1

I had a look in the ionic 4 alpha 7 code, and i was a little bit disappointed.

I had a look on virtual-scroll, that’s why i shied away from ionic previously. I keep building my own framework, as many open source plugins simply didn’t work, and i have the flexibility to modify easily. Ionic was not that flexible for me.

I’m interested in learning from ionic team and other teams as i had got ideas in the past.

Question 1: I’m wondering whether the virtual scroll has been transformed to web-component, as it seems to me untouched (ok i see, how stencil works now) - or it will be used only with angular? It was buggy also.

My virtual scroll can deal with:
1, can handle elements with variable height
2, can update element while scrolling. (naturally the height shouldn’t change at that time)
3, can handle selection rules
4, can scroll to a specific row, even if it’s not loaded yet, even with variable heights.
5, can track the top element for further use - (Google calendar)
6, can scroll up like down - (does not use any loading component)
7, can go next / prev element even if the row contains more element - it’s useful if you want to step your element one by one in a bigger size in a modal window
8, can lazy load heavy parts of the items inside the virtual-scroll (disappears while scrolling, and just loaded in the visible area, which is different from the item creation - as virtual scroll tends to create 3 pages, but i’m lazy loading heavy parts only in one page, naturally non-heavy (does not cause issues with the scrolling) in 3 pages)
9, can page up / down

To develop these features took me 1,5-2 month, but at least i’m satisfied with the performance and the results. I hoped that i get some help, but unfortunately i had to do everything, so it remains closed-source.
Unfortunately i had other components when i moved away, but not that many like in ionic, because many of them was just simple replace of html.

Yes, i’m using pure cordova at the moment, but until ionic 4 finishes its long road map, i can use different technologies.

Question 2: How reliable the capacitor is? I’m using my own plugins, so i can transform them easily.
I’m not sure i have any more time to grasp the idea, and build my own one mixing with microsoft ace or so.
I was able to develop swift plugin under cordova, the only problem is, that i haven’t real device, and apple account, so i had to tweak a little bit on permissions to work with emulator.
I used also electron. I had to say it’s very lightweight, my big worry if it’s built by capacitor, than i cannot upgrade the first day when new release is coming out.

Unfortunately if popular cordova plugins haven’t been transformed to capacitor in a more manageable, bug free and battery saver way there is not too much gain what i can take from it. (It’s a guess, anyway i’m rewriting the most popular ones to one particular package) Loading time of my app is not that much, i think maybe less than 1 sec (not a big headache), but to be honest i’m also using the most up-to-date version of angular and cordova.

To be honest the biggest selling point why i have chosen the hardest way,:

  1. I was fed up that i had to invest more time to work with something than just recreate, and i had to fix bugs even in cordova plugins.
  2. I dreamed of something highly configurable stuff can come from server side with proper permission management.
  3. I was not able to update angular and cordova when new releases was coming out.
  4. Ionic framework was too large - my app size is less than 500KB in js, and 30KB css, with ionic it was 3MB js and 400KB css
  5. My components also are very lightweight, they are just partially using angular, can be transformed far more easier to web-components.