We could spend far more time on Jelly. It has huge capability, including a comprehensive mechanism for controlling caching, but the mechanism for ensuring that data and variables are in the right place can quickly become very complicated. Instead, Jelly is often used as the launch point for launching an Angular page. Using a UI Page means you have complete control over how it all works.
While Angular is used throughout ServiceNow-and especially in Service Portal-you should use your own copy of the library in UI Pages to avoid any compatibility problems. This is the first step to using custom Angular in action.