Немного обо мнеЯ занимаюсь frontend уже 8 лет и с самого начала карьерного пути наблюдал как наш продукт рос и развивался (и я вместе с ним), формировалось frontend-сообщество, мировые web-стандарты получали второе дыхание и быстрое развитие, а accessibility приходило в наши дома. За это время я успел достаточно глубоко проникнуться идеями доступности, поскольку ранее и сам уделял внимание клавиатурному вводу в личном пользовании интернетом. Полагаю, все знакомы со стандартным паттерном аутент…
Любой программист, часто работающий с API, может сэкономить массу времени, если использует ChatGPT для автоматизации преобразования JSON в интерфейсы Typescript. Зачем это нужноAPI — удобный и универсальный способ наладить взаимодействие с сайтом или другим веб-приложением. Основная проблема при написании кода обычно заключается в том, он должен быть уведомлен об ответе. Но в результате обращения к API вы не получаете завершения.У этой проблемы есть два основных варианта решения:Отправить запр…
В текущих проектах я применяю подход Behavior Driven Development (BDD) для написания end‑to‑end тестов. Хотя раньше я скептически относился к Given‑When‑Then синтаксису, теперь часто его использую. Главная причина — я больше не пишу BDD‑сценарии вручную, а генерирую их с помощью ChatGPT.В статье расскажу, как вы можете генерировать AI-тесты в своем проекте и запускать их в реальном браузере с помощью Playwright.AI пишет тестыДля примера я буду использовать демо‑приложение TodoList, разработанн…
Всем привет, если у вас появилась идея связать эти два инструмента, то хочу вас огорчить, прямой интеграции у них пока нет...4 простеньких шага для решения этой проблемы:Создаем webhook в MattermostСоздаем Custom Integration и Alert в SentryПишем небольшой сервис, который будет принимать сообщение(event) из SentryПриводим event в нужный формат и отправляем в Mattermost с помощью webhookВесь код сервиса лежит в этом репозитории на гитхибе.Когда я столкнулся с проблемой, я начал искать готовые р…
Я решил написать этот пост по мотивам своей недавней дискуссии в комментариях к другому посту, напрямую с веб-компонентами не связанному. Я часто вступаю в подобные дискуссии здесь на Хабре и на других площадках. Кроме того, я регулярно провожу технические интервью с разработчиками и мы, также, часто касаемся этой темы. И вот, что я вам скажу: большинство фронтенд-разработчиков вообще не понимают, что такое веб-компоненты и зачем они нужны. Стандарту уже несколько лет, он давно поддерживается …
Привет, уважаемые участники Хабр! Сегодня мы поговорим о создании мини-игры, которую вы сможете использовать для украшения своего веб-сайта или просто оставить в качестве заставки. Мы разделим разработку проекта на две части: начнём с базового движения объектов и закончим созданием полноценного проекта. Данный курс подойдет как для новичков, которые уже немного освоили JavaScript, HTML и CSS, так и для уже опытных программистов.Финальное демо первой части урока:Давайте начинать!Структура проек…
Bun — «швейцарский нож» для JavaScript, который все ждали, наконец релизнулся и уже стал геймченджером. Bun представляет собой универсальную среду выполнения JavaScript и набор инструментов, рассчитанный на высокую скорость работы. В его состав входят бандлер, тест-раннер, встроенная поддержка TypeScript и JSX и даже менеджер пакетов, совместимый с Node.js.Дисклеймер: это вольный перевод статьи из блога Алекса Кейтса. С оригинальным постом можно ознакомиться здесь.В этом руководстве мы погрузи…
https://vue-faq.org - попытка охватить наиболее часто задаваемые в профильных чатах и конференциях вопросы о фронтенде в целом и Vue.js фреймворке в частности.FAQ постоянно обновляется, текущий список тем выглядит так:ФронтендО фронтенд фреймворкахКак изучать Vue?SPA, PWA, SSG, SSR и CEOCSS и UI библиотекиАрхитектура фронтенд приложенийРазработкаНастройка IDEСоздание и сборка приложенияКак вставлять картинки и другие ресурсыСторы - Vuex, Pinia и Composition APIТестированиеПолезные советыОбщени…
Как правило, приложения обрабатывают операции бизнес-логики, отправляя код для выполнения в базу данных. Это медленный процесс, поскольку код передается от клиента на сервер каждый раз, когда выполняется функция. Код, который используется для работы с одной и той же базой данных, может повторятся в разных приложениях, соответственно разработчик несет ответственность за поддержание согласованности этого кода в независимости от того, выполняет ли код простые запросы или сложные операции с данным…