Caution
Весь JS темы был написан ИИ. Я не могу гарантировать стабильную работу темы
Тема на основе VKify от koke228, которая пытается скопировать интерфейс сайта ВКонтакте 2016 года. Изначальный CSS от thejenja.
Папка, в которую вы распакуете тему, должна быть названа "vkify16".
Готовы:
- Шапка сайта
- Уведомления
- Плеер
- Страницы входа и регистрации
- Лента новостей
- Профили пользователей и групп
- Редактирование профиля и группы
- Списки друзей, групп, закладок, музыки, видео, заметок, альбомов
- Раздел недавних фото в списке альбомов
- Страницы фото, видео, игр, заметок, плейлистов
- Модальные окна для фото, видео и записей
- Настройки
- Темная тема
- Режим 2018
- Логотип OpenVK вместо ВКонтакте
- Служба поддержки
- Поиск
JS-модули темы (res/js/ui/*, res/js/features/*, и т.д., за исключением core/vkify.js, core/settings-config.js, core/router.js, i18n/localizator.js, ui/page.js, ui/tooltips.js и сезонных скриптов вроде features/doge.js) собираются в один минифицированный файл res/js/dist/vkify16.bundle.js.
Собранный бандл коммитится в репозиторий, поэтому для обычной установки Node.js не требуется. Пересобирать нужно только при изменении исходников JS:
npm install
npm run build # одноразовая сборка
npm run watch # автоматическая пересборка при изменениях любого из собираемых модулейВ режиме watch esbuild следит за всеми файлами, указанными в списке модулей build.mjs, и пересобирает бандл при любом изменении. Изменения самого build.mjs или плагина tools/template-html-minify.mjs требуют ручного перезапуска.
Помимо минификации пробелов и синтаксиса, сборка сохраняет имена функций/переменных и дополнительно минифицирует HTML в шаблонных строках (`<div>...</div>`) — см. tools/template-html-minify.mjs.
Порядок модулей и список исключений см. build.mjs.