Как реализовать на Битрикс, может даже SPA, хедер, футер и сайдбар не должны меняться при переходах по страницам, только контент. Может кто то делал уже, либо есть идеи по реализации...
Смотрю в сторону barba.js, либо вообще vue.js
Там придется возиться с местным Фреймворком чтобы что-то осмысленное получать из базы — можно в администраторском конструкторе набирать страницы, а потом выдирать чисто содержательную часть, но с "прологом" и "эпилогом" от Фреймворка — в принципе, простая, но нудная задача.
Все от конкретной задачи зависит, любому битриксовому компоненту можно указать параметр AJAX_MODE = Y, проще поставь комплексный компонент catalog и поставь AJAX_MODE = Y, посмотри, если такой вариант устраивает, то делай по аналогии