Что может быть хуже чем плохой интернет ? Плохой интернет, когда нужно загрузить картинку весом как чугунный мост. В эпоху очень быстрого интернета мы стали забывать о том, что в некоторых локациях нашего мира нет хорошей сети (например, когда вы едете в поезде по нашей необъятной стране). Эту проблему довольно хорошо решают Service Workers, о которых я вам сейчас расскажу.Что такое Service Workers ?Service Workers - worker, который создает отдельный и изолированный контекст выполнения, работа…
Кодировка (encoding) и декодирование (decoding) в Base64 — распространенный способ преобразования двоичных данных в безопасный текст. Он часто используется в Data URL, таких как встроенные (inline) изображения. Прим. пер.: с помощью data URL можно решить проблему (ошибку) отсутствующей фавиконки в браузере. <link rel="icon" href="data:." /> Что происходит при кодировке и декодировании в base64 строк в JS? В этой статье мы рассмотрим некоторые особенности и ловушки, связ…
это типа супСтатья посвящается конкретно Redux+Saga+Typescript. Практика, которую я видел в разных коммерческих проектах, и с которой до сих пор сталкиваюсь. redux + saga уже является дедовским методом ( из за большой шаблонности кода - бойлерплейта ) , потому что сейчас актуальнее redux-toolkit с RTK query или effector, кому то может и mobx :) . Следующим постом я бы хотел переписать имеющийся код на FSD архитектуру с redux-toolkit + RTK query и разобрать отличия.ПредисловиеВ этой статье буде…
ВведениеВ данной статье будет рассмотрен паттерн CustomSwitch, который может быть использован в различных ситуациях и программных языках. В данном случае мы реализуем CustomSwitch на языке программирования JavaScript. Однако, стоит помнить, что это далеко не единственный возможный язык для его реализации. ИспользованиеПервый скриншот демонстрирует код игрового движка. На втором примере, я приведу код автора и свой код, в котором используется паттерн CustomSwitch. Код автора: nextPosition(initi…
Моя работа состоит в написании кода на React. Несмотря на то, что мне нравится React, при разработке на нем я столкнулся с некоторыми его недостатками. В связи с этим, я решил создать свою библиотеку, Fusor, чтобы исправить эти недостатки и вот что из этого получилось.Нашел один фатальный недостаток и решил запилить своё с блэкджеком...Не люблю лишних разговоров поэтому перейду ближе к телу наших подопытных.Разделяй и властвуйОн же принцип единой ответственности (single-responsibility principl…
Всем привет! Решил сделать небольшую инструкцию как запустить проект Next JS на сервере. Я использовал Ubuntu 22.04 и Nginx.1. Инсталим nginxsudo apt-get update sudo apt-get install nginxредактируем nginx/sites-available/default server { server_name domen.ru; location / { include proxy_params; proxy_pass http://127.0.0.1:3000; } listen 80; }2. Инсталим Node JSsudo apt install curl curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash source ~/.p…
В четверг, 26 октября, в 17:00 состоится онлайн-митап, посвященный JS-разработке: «Гетерогенность, или Деплой JavaScript туда и обратно». На ивенте расскажем, как мы в «Лаборатории Касперского» развернули несколько веб-приложений в совершенно разных средах на единой кодовой базе, разберем построение В2В единой консоли — комплексного, сложного приложения; единую модель деплоймента для cloud-native-разработки и on-premise; а также разработку в распределенных командах (фича-тимы). Помимо эт…
Как переписать целые JS-библиотеки на CSS? А как ускорить сборку? Найти утечки памяти? Заменить фон в видеозвонке? Отрендерить видео в Node.js? Прокачать личный бренд?На ближайшей конференции HolyJS расскажут обо всём этом и много чём ещё. Программа уже известна, и мы публикуем на Хабре описания всех докладов.СодержаниеИнструменты разработкиПроизводительностьBackendCase-studyАрхитектураUIМягкая силаДругоеЗаключениеИнструменты разработкиНиндзя кодогенерации. Ускоряем разработкуВадим МалютинСпик…
ВведениеВ данном практическом руководстве показывается, как создать простую автоматизацию, используя команду Midjourney /imagine в качестве примера.Для этой задачи вам понадобится учетная запись Discord с активной подпиской на Midjourney, базовый план за $10 подойдет идеально.Следуйте этим простым шагам, чтобы получить:Идентификатор сервера Discord, который будет упомянут в этой статье как server_idИдентификатор канала Discord, который будет упомянут в этой статье как channel_idТокен Discord, …