Category : javascript

javascript
Призываю переименовать Layers в Feature-Sliced Design методологии

В статье я сначала коротко объясню, как лично я понимаю и использую FSD, для тех, кто не знаком с ней, или знаком, но хочет сравнить с чужим видением.Однако, пишу я это в основном для того, чтобы обратить ваше внимание, что названия Layers подобраны не по алфавиту, и лично мне это мешает. Подумайте, может и вам мешает. На мой взгляд, их стоит переименовать в алфавитном порядке, даже жертвуя смыслом, чтобы они лучше отображались в файловой структуре проекта.Краткий экскурс в FSDFSD - это популяр…

  • понедельник, 2 декабря 2024 г. в 00:00:07
javascript
AJAX-запросы в Django на примере простейшего приложения сбора и показа сообщений

ПредисловиеВеб-разработчики часто сталкиваются с необходимостью динамически обновлять страницы без полной перезагрузки. С этим хорошо справляется технология ассинхронного обмена данными AJAX, однако я не нашел на просторах интернета простого мануала использования AJAX и решил создать его сам. В этой статье я собираюсь подробно показать взаимодействие фронтенда с AJAX и бекенда с Django, ограничившись минимумом кода. Статья больше рассчитана на новичков и станет отличной базой для дальнейшего ра…

  • понедельник, 2 декабря 2024 г. в 00:00:06
javascript
Как я создал Vanilla Calendar Pro — легкий и гибкий календарь на JavaScript с использованием TypeSc…

Превью Vanilla Calendar Pro v3Привет, Habr!Честно говоря, долго сомневался, стоит ли писать эту статью. Я понимаю, что среди комментариев наверняка будут такие, кто скажет: «Очередной никому не нужный датапикер». Но сегодня, когда Vanilla Calendar Pro собрал больше 480 звезд на GitHub и получает 17 тысяч скачиваний в месяц, я решил поделиться своей историей.Хочу сразу отметить: я не претендую на лавры лучшего разработчика календарей и датапикеров. Эта статья о моем первом опыте в open source, о…

  • суббота, 30 ноября 2024 г. в 00:00:13
javascript
JavaScript. Как сделать невероятно быстрый многопоточный Data Grid на 1 000 000 строк. Часть 1/2: н…

Demo | GitHubРисунок 1. Data Grid на 1 000 000 строк Особенности Fast Data Grid:Невероятно быстрыйМногопоточныйВсего 523 строчки кодаНет зависимостейVanilla JavaScriptПопробуйте скролл и поиск по 1 000 000 строк — Fast Data Grid.В статье перечислю нюансы работы с DOM. Про многопоточность в следующей статье.Чем меньше DOM - тем лучше. Изменить содержимое DIV быстрей чем удалить DIV и создать новыйБраузер медленно отрисовывает большое DOM-дерево. 1 000 000 строк высотой 20 px браузер вообще не на…

  • суббота, 30 ноября 2024 г. в 00:00:10
javascript
Как спрятать любые данные в PNG

Настало время открыть Америку! Меня действительно удивило предельно малое кол-во информации на данную тему. Будем исправлять.И так, сразу к делу! Что нам нужно знать, чтобы спрятать что-то внутри PNG картинки?Нам нужно знать, что PNG внутри себя хранит информацию о каждом пикселе. В каждом пикселе в свою очередь 3 канала (R, G, B), которые описывают цвет и один альфа-канал, который описывает прозрачность.LSB (Least Significant Bit) — младшие биты, которые мы можем использовать для своих темных …

  • пятница, 29 ноября 2024 г. в 00:00:06
javascript
Пишем плагины для Obsidian. Часть 2

Продолжаем писать собственные плагины для Obsidian. Первую часть статьи можете найти здесь. В ней мы:Выяснили, что можно писать плагины даже проще, чем это предлагает делать официальная документацияНаписали три маленьких плагина, которые уже вовсю используются на продакшене лично мнойГрозились написать четвертый финальный босс-плагинВот и приступим.Плагин 4. Chess Viewer. ИдеяЯ не шахматист, но интересуюсь :) У меня есть заметки с шахматными зарисовками. И я определенно не один такой, поскольку…

  • пятница, 29 ноября 2024 г. в 00:00:03
javascript
Отслеживание позиций торгового робота Московской биржи через CSV файл

Нахожусь в процессе написания механизма торгового робота, работающего на Московской бирже через API одного из брокеров. Брокеров имеющих своё АПИ для МосБиржи катастрофически мало — мне известно только о трёх. При этом, когда я стал публиковать модули робота (и полностью выложу готовый механизм робота на GitHub), то стал получать непонимание — например, мне писали в комментариях — зачем придумывать велосипед, когда уже есть QUIK — популярная российская платформа для биржевых торгов. В Квике уже…

  • четверг, 28 ноября 2024 г. в 00:00:06
javascript
Типизация свойства объекта в виде строки

ВведениеВсе так или иначе сталкивались с функцией или методом, которая принимает объект и свойство в виде строки с которым нужно что-то сделать. Пример:updateDate(user, "date");И когда изменяются свойства объекта (user.date → user.birthday), компилятор его нормально скомпилирует и мы лишаемся возможности отловить баг на стадии разработки.ПроблемаЧто в рабочих, что в пет-проектах, использую библиотеку Element plus. У него есть компонент ElTable c атрибутом date, принимающий список объект…

  • четверг, 28 ноября 2024 г. в 00:00:05
javascript
Эффект матового стекла для веба

В процессе разработки UI для игр Forza Horizon 3 и Forza Motorsport 7 я имел возможность поработать с потрясающими акриловыми матовыми элементами дизайна. Вот пример из Horizon 3:Вдохновлённый этим дизайном, я захотел создать похожий эффект при помощи HTML. В этом посте я расскажу о своих попытках создания красивого эффекта стекла, а также представлю пример кода и ассетов для тех, кто захочет попробовать реализовать эту методику самостоятельно. Вот как выглядит готовый результат:Готовый кодПреж…

  • четверг, 28 ноября 2024 г. в 00:00:04