Поставил
Бандл был 200Кб, стал 400Кб...
wtf%№?:;*"(;?;*!!!!!
Кто как делает?
#firebase #auth #optimization
Firebase Authentication на сайт (логин через Google, Apple и т.д.)Бандл был 200Кб, стал 400Кб...
wtf%№?:;*"(;?;*!!!!!
AI бот предлагает другие варианты, но уверяет, что они хуже.Кто как делает?
#firebase #auth #optimization
В очередной раз делая
Понятно, что для того, чтобы при смене языка он сразу менялся на странице без ее перезагрузки. А оно того стоит? Ценой этого - пронизывание практически всех компонентов сетью реактивной зависимости, что точно не благотворно сказывается на производительности и сложности кода.
Большинство сайтов направлены на определенную языковую аудиторию. Кроме того, можно определять по браузеру язык системы и автоматически в него переключаться в первый раз. То есть, процент тех, кто на сайте сменит язык какой - 1-2? И из-за одного их переключения должны тормозить все?
Напомню, что у монструозного лендинга
Какие мысли по этому поводу?
#i18n #optimization
i18n на Vue проекте, задумался - а зачем этому модулю (и функции t() в частности) реактивность? Неважно, стандартный это i18n-next или самописный.Понятно, что для того, чтобы при смене языка он сразу менялся на странице без ее перезагрузки. А оно того стоит? Ценой этого - пронизывание практически всех компонентов сетью реактивной зависимости, что точно не благотворно сказывается на производительности и сложности кода.
Большинство сайтов направлены на определенную языковую аудиторию. Кроме того, можно определять по браузеру язык системы и автоматически в него переключаться в первый раз. То есть, процент тех, кто на сайте сменит язык какой - 1-2? И из-за одного их переключения должны тормозить все?
Напомню, что у монструозного лендинга
GitLab основная зависимость в 13Mb скриптов именно i18nКакие мысли по этому поводу?
#i18n #optimization
Telegram
Vue-FAQ
Кастомная i18n
Распространенный пакет для интернационализации веб приложений i18next сильно раздут и содержит много редко используемого функционала.
В то же время перевод сайта на несколько языков без необходимости обработки чисел и родов можно провести…
Распространенный пакет для интернационализации веб приложений i18next сильно раздут и содержит много редко используемого функционала.
В то же время перевод сайта на несколько языков без необходимости обработки чисел и родов можно провести…
👍15
Сайт icones.js.org довольно удобен для подбора иконок (хотя выбор средний и поиска по параметрам нет, но хорошо сделано копирование найденного сразу в
К вопросу о том, качественный ли код пишет
#antfu #icons #optimization
svg), но такое потребление памяти после поиска нескольких иконок выше понимания.К вопросу о том, качественный ли код пишет
Anthony Fu, автор VueUse, Nuxt и многого другого#antfu #icons #optimization
🤡10💩3😢1
VS Code позволяет отключить аппаратное ускорение при отрисовке, что может заметно убыстрить IDE при плохом GPU или проблемах с драйверами1. Preferences > Configure Runtime Arguments
2. Добавить: "disable-hardware-acceleration": true
Или сразу в
.vscode/argv.json#vscode #tip #optimization
Vite позволяет использовать новый более производительный и функциональный компилятор SASS через эту опцию:export default {
css: {
preprocessorOptions: {
scss: {
api: 'modern-compiler'
}
}
}
}
Дефолтным его не делали пока потому, что это breaking change, но в
Vite 6 он будет по умолчанию.В любом случае, чистый
CSS3 со своим современным функционалом уже вполне покрывает все основные потребности стилизации.Рекомендуется к использованию.
#vite #css #optimization
👍13
Заспорил тут в Твиттере с создателем
На аргумент о
В итоге получился вот такой бенчмарк на Stackblitz по замеру времени изменения разных массивов
С одной стороны, ужасно, как
С другой, еще раз стало очевидно, что писать программы на
#optimization #benchmark
FormKit Justin Schroeder, который с чего-то призвал отказаться от использования ref в пользу reactiveНа аргумент о
ShallowRef он привел ShallowReactive, и стало интересно, как сильно они отличаютсяВ итоге получился вот такой бенчмарк на Stackblitz по замеру времени изменения разных массивов
ShallowRef не использует JavaScript Proxy, отсюда такая эффективностьС одной стороны, ужасно, как
Proxy уронил общую производительность в JSС другой, еще раз стало очевидно, что писать программы на
Vue надо с умом. Необходимо полностью контролировать модель и потоки данных. Именно поэтому доверять таким библиотекам, как VueUse и Tanstack, это, как минимум, торговать производительностью и архитектурой.#optimization #benchmark
👍12❤1
Сперва они советуют всегда для роутов использовать динамичные роуты, потом учат делать префетчинг...
Этот совет из документации
#routing #optimization
Этот совет из документации
Vue Router - самое глупое что есть в ближайшей Vue экосистеме.#routing #optimization
💩9💯1
// useUserService.ts
function isAuthenticated() {
return !!user.value;
}
// Component A
<script>
const { isAuthenticated } = useUserService();
</script>
<template>
<p v-if="isAuthenticated()">hello</p>
</template>
Функции во
Vue ведут себя не совсем как функцииВ данном примере функция
isAuthenticated() ведет себя как computed и будет вызываться каждый раз, когда user изменится или компонент А будет перерисовываться.Происходит это из-за того, что
Vue определяет все реактивные зависимости внутри тела функции и перерендивает компонент, когда кто-то из них меняется.Таким образом, большой разницы в использовании функции вместо
computed нет. Но если внутри большая логика, то лучше использовать computed, потому что он будет пересчитываться только когда его зависимости изменились, а функция - при любом рендеринге#reactivity #tip #optimization
❤10💩3👍2😁2👎1🌚1
Время от времени можно удалять локальный
#npm #pnpm #optimization
npm/yarn/ pnpm кэш, чтобы освободить место на диске от устаревших версий пакетов.#npm #pnpm #optimization
👍3👌1
Датацентры всего мира производят 3.7% мирового CO2 (carbon footprint, углекислый газ)
Каждый показ вашего сайта является причиной выделения CO2 - в среднем 0.8 грамм.
Замерьте карбоновый след вашего сайта
Еще одна причина писать эффективные
#pwa #optimization
Каждый показ вашего сайта является причиной выделения CO2 - в среднем 0.8 грамм.
Замерьте карбоновый след вашего сайта
Еще одна причина писать эффективные
PWA #pwa #optimization
Website Carbon Calculator
Website Carbon™ Calculator v4 | What's your site's carbon footprint?
The original website carbon calculator tool, brought to you by Wholegrain Digital,London's original sustainable WordPress agency.
🤡10🔥3
В проекте число иконок перевалило за 150, а их объем в
Поэтому задумался, как оптимизировать это дело. Стандартных решений не нашел. Решил вынести все иконки для кэширования через
На первой загрузке сайта получается лишний запрос. Потом норм.
Есть что-то более оптимальное?
#svg #optimization
JS бандле занимает пятую часть.Поэтому задумался, как оптимизировать это дело. Стандартных решений не нашел. Решил вынести все иконки для кэширования через
service worker. SVG спрайт слишком тяжелый для клиента, поэтому засунул всё в JSON, который считываю в JS и делаю Map по HTML кодам иконок. На первой загрузке сайта получается лишний запрос. Потом норм.
Есть что-то более оптимальное?
#svg #optimization
🤔3