Symbi0t:
Скорее классический сайт, чем полноценное SPA. Но именно клиентсайд хотелось бы сделать модульным, используя ES6.
Вот это плохой подход. Инструменты нужны, чтобы решать проблему. А у вас подход - "Проблемы нужны, чтобы использовать инструменты".
Тем более получить поверхностные знания одно, а использовать - другое. С большой вероятностью проект будет настолько медленно развиваться, что вы забьете на дизморали.
выберите одно, на нем сконцентрируйтесь, сделайте прототип рабочий, потом постепенно переписывая допиливая с использованием новых технологий (CommonJs/AMD, к примеру, в небольшом проекте вполне нормально заменить на анонимные самовызывающиеся функции). Поймите зачем вам вообще этот проект, если это что-то большее чем песочница для обучения, то сконцентрируйтесь на этом большем (контенте).
Попробуйте реализовать какой-нибудь типовой архитектурный шаблон на нативном js, чтобы лучше видеть +/- фреймворков(библиотек), какие проблемы решают, да и вообще понимать, что там происходит.