Most core plugins do not use jQuery. Dropdowns, overlays, tooltips, popovers, tabs, and similar components use plain JavaScript. Positioning behavior uses @floating-ui/dom.
jQuery is only relevant for Datatable because datatables.net depends on it, and Datepicker only needs vanilla-calendar-pro. Whether a missing dependency stays isolated to its own plugin depends on which install path you're on. With a single-plugin package (@preline/datatable, @preline/datepicker, and so on) each plugin ships its own isolated bundle, so scoping the optional dependency to only the pages that use that plugin is safe.
The static bundle (preline.js, covered above) is different: loading it at all runs HSStaticMethods's aggregator, which eagerly requires every plugin's implementation module up front to build the shared registry, not just the plugins your current page's markup uses. Most plugin modules guard their optional dependency with a runtime check that safely no-ops when it's missing, but not every plugin does. Datepicker's implementation extends VanillaCalendarPro.Calendar unconditionally at module-evaluation time, so if vanilla-calendar-pro isn't already on window when preline.js runs, that throws during the bundle's own startup. Because the aggregator requires plugins in a fixed sequence, an uncaught error there can stop whichever plugins come after it in that sequence from registering too, even on a page with no datepicker markup at all. If you're on the static bundle path, load every optional dependency your project uses (jQuery, datatables.net, lodash, Dropzone, noUiSlider, vanilla-calendar-pro) globally, before preline.js, on every page, rather than scoping them per page.
Range Slider uses the JavaScript API from noUiSlider. Preline UI remains responsible for the Tailwind CSS markup and behavior wrapper, so you do not need to bring in noUiSlider CSS just to make Preline UI styling work.