Category : javascript

javascript
Скрепинг данных с Chat GPT

Всем привет! Хочу поделиться своим опытом программирования с помощью чат GTP. У меня была коммерческая задача - нужно было собрать контактную информация с сайта yelp.com по выборке рестораны и бары. Это была часть процесса лидогенерации. Парсер должен был состоять из двух частей: Первый — собрать URL-адреса всех компаний, которые появляются в результатах поиска.  Затем он просматривает каждую страницу и собирает данные, как название компании, веб-сайт, описание, адрес, контактную информацию и …

  • вторник, 27 июня 2023 г. в 00:00:13
javascript
React: как сделать динамический суффикс в <input />, который будет двигаться вместе с набранным тек…

ЗадачаНеобходимо сделать input с помощью React, в котором, после текста отображается какое то значение. Будем называть это значение суффиксом.УсловияCуффикс не должен подмешиваться к самому значению инпута, т.e. чтобы мы на каждый change эвент не брали строку и не отделяли этот суффикс, а потом все снова складывалиСуффикс во время ввода должен всегда быть виденСуффикс может быть другим react элементом (например картинкой, или текстом)Если мы передадим во время работы приложения новое значение …

  • понедельник, 26 июня 2023 г. в 00:00:12
javascript
В поисках лучшей версии EcmaScript для сборки сайта

Как оказалось, выбор версии ES для сборки веб-приложения, а также организация самой этой сборки, может оказаться весьма сложной задачей. Особенно, если вы собираетесь делать этот выбор, основываясь исключительно на доказательной базе. В этой статье я постараюсь ответить на следующие вопросы, возникшие в ходе моего расследования на эту тему:Как влияет компиляция кода под ES5 на производительность сайта?Какой инструмент генерирует самый производительный код - TypeScript Compiler, Babel или SWC?В…

  • воскресенье, 25 июня 2023 г. в 00:00:16
javascript
Debouncer: практический пример использования замыкания

Что такое дебаунсер?Дебаунсер - это функция-обертка, которая ограничивает число выполнений переданной в нее функции, некоторым промежутком времени.Практическое применениеПредположим, при вводе текста в инпут мы хотим отправлять запрос на сервер, чтобы получить выпадающий список вариантов под введенное значение.По умолчанию, запрос будет уходить при вводе очередной буквы, но чтобы не грузить сервер запросами и не повторять рендер страницы с одинаковыми по значению данными, мы хотим обернуть зап…

  • воскресенье, 25 июня 2023 г. в 00:00:15
javascript
Как делать full-stack с одного устройства без СМС и регистрации

Эта статья написана для ламеровЯ как обычно учился кодить, и вдруг заметил что телеграм выпустил веб апи и теперь там есть фронт...На тот момент я уже владел React, Flask и Django, и решил повысить планку с помощью FastAPI.Веря в свои силы, я установил FastAPI и aiogram. Очевидно, мне следовало бы использовать нативные методы Telegram API, но aiogram предоставляет множество удобных функций, которые ускоряют разработку.ПроблемаDjango и Flask используют шаблонизаторы (я использовал Jinja2), что …

  • воскресенье, 25 июня 2023 г. в 00:00:14
javascript
ESLint. Анатомия правил линтинга: разбираем структуру, создаём собственное правило для React-прилож…

Всем привет! Меня зовут Анастасия Щедрина, я технический лидер по фронтенду проекта размещения объявлений в компании Домклик. Сегодня я расскажу вам немного о том, как устроены правила в ESLint, и покажу на примере, как можно разработать собственные.Статья будет полезна тем, кто уже задумался о создании своих правил, а также тем, кто использует линтер, но не знает, как он устроен и как подключённые правила обрабатывают наш код.Зачем нужны линтеры и как расширить стандартный набор правилСейчас …

  • суббота, 24 июня 2023 г. в 00:00:20
javascript
Как тестировать не-REST-бекэнд. Часть первая, GraphQL

Привет! Меня зовут Сергей, я более 11 лет в тестировании, и успел за это время перепробовать множество разных подходов в QA — начинал простым тестировщиком, затем строил и развивал всевозможные отделы тестирования и автоматизации, а сейчас работаю в QIWI.В этой серии постов я хочу поговорить с вами про тестирование трех популярных так называемых не-REST-бэкендов. Самое главное для начала — определиться с терминами, договоримся, что везде в тексте, где я упоминаю REST — речь идет именно о REST …

  • суббота, 24 июня 2023 г. в 00:00:19
javascript
Путешествие в царство легаси. Как маленькая задача привела к большому рефакторингу

Привет! Меня зовут Артем Коньков, я frontend-разработчик в СберМаркете. А еще, я тот человек, который в фильмах ужасов спускается в темный подвал вопреки инстинкту самосохранения. Во-первых, потому что это интересно, а во-вторых — кто-то же должен это делать!Это история о том, как мое любопытство превратило небольшую задачу в настоящий квест длиной в 5 спринтов. Я нисколько не жалею, что в него ввязался, потому что в итоге я провел крупный и полезный для компании рефакторинг. Я потратил горазд…

  • суббота, 24 июня 2023 г. в 00:00:18
javascript
Maskito – новая коллекция библиотек для маскирования текстовых полей

Рады поделиться: выложили нашу разработку Maskito в открытый доступ, и совсем недавно произошел релиз ее первой мажорной версии. Maskito — коллекция библиотек, упрощающих маскирование текстовых полей, с удобным и гибким публичным API.Maskito содержит разные библиотеки: основная написана на TypeScript без зависимостей, есть опциональный пакет с набором готовых конфигурируемых масок, а еще есть библиотеки для удобного использования Maskito в проектах на React, Angular или Vue. Рассказываю обо вс…

  • четверг, 22 июня 2023 г. в 00:00:15