Суть работы Barba.js очень проста - она перехватывает ссылки на страницы текущего сайта, загружает их в память, выделяет контейнер с контентом и заменяет его на странице. Все это может сопровождаться анимацией.
Хороший пример использования, на мой взгляд, можно посмотреть на странице документации.

