Обновить
234.52

JavaScript *

Прототипно-ориентированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Как ESLint анализирует код и борется с Legacy

Время на прочтение5 мин
Охват и читатели7.2K

Рассказываем, как мы с фронтенд-разработчиком Дмитрием Балаевым @manmo убираем Legacy, какими Open Source конфигурациями для ESLint пользуемся и как статический анализатор кода повлиял на развитие разработчиков нашей компании.

Читать далее

Как мы собрали проект на Django и React и уважили загрузчик Webpack

Время на прочтение10 мин
Охват и читатели11K

Когда мы взялись за гибридный проект, в котором одновременно использовались Django и React, мы столкнулись с дилеммой: как интегрировать две эти части, в особенности, как разрешить шаблонам Django отображать ресурсы JavaScript, сгенерированные при клиентской сборке. Мы нашли изящный способ, позволяющий с этим справиться: использовать Webpack-загрузчик для Django с трекером бандлов Webpack, при помощи которых нам поддался этот этап работы сборочного конвейера. А в этой статье мы научим вас, как это делается.

Читать далее

React Drag & Drop: «Игра в бутылки»

Время на прочтение9 мин
Охват и читатели27K

Меня зовут Сергей, я фронтенд-разработчик отдела спецпроектов KTS. Наш отдел занимается разработкой веб-приложений для промокампаний. 

Помните, как в 1-й книге о Гарри Поттере Гермиона разгадывала логическую загадку с бутылочаками волшебных зелий? Сегодня расскажу, как мы создавали именно такую игру. 

У нас есть 5 бутылок и 2 полки. При старте игры на одной полке произвольно устанавливаются бутылки и их необходимо установить в правильном порядке на второй полке.

Мы воспользуемся react-dndstyled-componentsmobx и createPortal.

Читать далее

Дайджест свежих материалов из мира фронтенда за последнюю неделю №506 (6 — 13 февраля 2022)

Время на прочтение3 мин
Охват и читатели11K
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →

Рисуем генеративные грибы на javascript

Время на прочтение8 мин
Охват и читатели18K

Продолжаю делиться своим опытом погружения в мир генарта и nft, на этот раз при помощи генеративных грибов. Для тех кто не совсем в теме хотя бы одного из этих слов, предлагаю сначала посмотреть мою предыдущую публикацию, а в этой статье я постараюсь больше сосредоточиться не на философии того, что вообще происходит, а на технической реализации процедурной 3д графики в three js.

Читать далее

Три подсказки для Wordle

Время на прочтение8 мин
Охват и читатели6.9K

Текст о том, как я добавил функцию подсказок в игру Wordle и о трех алгоритмах, которые так близки, но так сильно отличаются по результатам.

Читать далее

Пишем «Hello, world!» для Zepp OS и часов Amazfit GTS 3

Время на прочтение4 мин
Охват и читатели41K


Совсем недавно Amazfit (партнёр Xiaomi) представила новое поколение умных часов, в линейку которого вошли модели GTR 3 Pro, GTR 3 и GTS 3. Эти часы официально продаются и теперь можно без проблем купить. Я бы обошёл новинку стороной, ведь есть модели и подешевле с практически теми же возможностями, например Bip S. И всё же главной изюминкой новых часов можно назвать новую операционную систему Zepp OS.
Для меня самой интересной особенностью новой ОС стала возможность запускать на часах приложения на JavaScript, чем мы сегодня и займёмся и напишем нашу самую первую программу.
Читать дальше →

4 важных нововведения в ES2022

Время на прочтение3 мин
Охват и читатели55K

ECMAScript 2022 - это новый стандарт JavaScript, который будет выпущен в июне 2022 года. Давайте посмотрим на самые важные изменения, которые, наиболее вероятно, должны появиться в новом релизе, так как они достигли уже 4-ой, последней стадии принятия новвоведений в спецификации EcmaScript (TC39).

Читать далее

Градиентный поиск коэффициентов квадратической регрессии

Время на прочтение3 мин
Охват и читатели3.5K

Продолжаем скрещивать javascript с матаном для развития ракетных наук. На очереди - методы численной оптимизации

Читать далее

Пишем nest.js с нуля на typescript

Время на прочтение28 мин
Охват и читатели21K

Nest.js - популярный node.js фреймворк с отличной архитектурой, основанной на Angular.

Под капотом Nest использует надежные платформы HTTP-серверов, такие как Express (по умолчанию), и при желании также может быть настроен для использования Fastify! Nest обеспечивает уровень абстракции по сравнению с этими распространенными платформами Node.js (Express/Fastify), но также предоставляет свои API-интерфейсы непосредственно разработчику. Это дает разработчикам свободу использовать множество сторонних модулей, доступных для базовой платформы.

Читать далее

Основы внутреннего устройства JavaScript

Время на прочтение6 мин
Охват и читатели49K
image

С ростом популярности JavaScript команды разработчиков начали использовать его поддержку на многих уровнях своего стека — во фронтенде, бэкенде, гибридных приложениях, встраиваемых устройствах и многом другом. В этой статье мы хотим более глубоко рассмотреть JavaScript и то, как он работает.

Введение


Почти все уже слышали о концепции движка V8 и большинство людей знает, что язык JavaScript однопотоковый или что он использует очередь обратных вызовов.

В этом посте мы подробно разберём эти концепции и объясним, как же работает JavaScript. Благодаря знанию этих подробностей вы сможете писать более оптимальные приложения, надлежащим образом использующие API. Если вы работаете с JavaScript относительно недавно, этот пост поможет вам понять, почему JavaScript настолько «странный» по сравнению с другими языками. А если вы опытный разработчик на JavaScript, то он позволит вам по-новому взглянуть на внутреннее устройство JavaScript Runtime, с которым вы работаете каждый день.
Читать дальше →

Использование Typescript для создания react компонента «Простой фабрики»

Время на прочтение5 мин
Охват и читатели14K

Использование Typescript при создании React компонента «Простой фабрики»

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

Читать далее

Восстановление типов JSON

Время на прочтение10 мин
Охват и читатели9.5K

Для транспорта данных я почти всегда упаковываю их в JSON. Но вот беда: как правило, библиотеки для парсинга возвращают примитивные типы да объекты с массивами — всё то, что заложено самим форматом. Но что если хочется получить модели сущностей?

Читать далее

Ближайшие события

Мой опыт с Webpack 5 Module Federation

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели20K

Всем привет. Меня зовут Михаил, я - фронтенд-разработчик в Лиге Цифровой Экономики.

В последнее время я пробую себя в должности руководителя направления фронтенд-разработки, однако я хочу с вами поделиться опытом разработки приложения с применением Webpack Module Federation, о том, какие задачи приходилось решать и проблемы, которые возникли на этом пути. Не буду вдаваться в теорию о микрофронтах и module federation, об этом уже много написано и предполагается, что вы знакомы с базовой настройкой. Мы же поговорим о самом «вкусном», некоторые моменты будут опущены в целях сосредоточения на деталях.

Читать далее

Дежавю От Laravel к AdonisJs, или как поменяли исходный код в Матрице

Время на прочтение7 мин
Охват и читатели7.8K

Привет, Хабр.

Как и все разработчики на php, я тоже иногда сталкивался с NodeJs .
На днях просмотривая фреймворки Node столкнулся на AdonisJs . И после нескольких минут прочтения кодоа я почувствовал себя как в матрице .

Прошла черная кошка, за ней другая, такая же.

А теперь немного про AdonisJs.

Когда дело доходит до разработки веб-приложений, есть десятки фреймворков на выбор. Менее известный, но очень любимый фреймворк — AdonisJs, известный своим красивым кодом и простотой для бэкэнда.

AdonisJs — это узел. js MVC для согласованного, стабильного и выразительного кода. Адонис заботится о многих трудоемких деталях разработки, предлагая стабильную экосистему для серверных веб-приложений.

Разработчики, использующие Laravel, отмечают, что AdonisJs предлагает тот же шаблон, дизайн, структуру кодирования и интерфейс на основе команд. AdonisJs легко изучить. В этой статье я хочу познакомить вас с фреймворком и показать, с чего начать.

Читать далее

JavaScript: делаем селфи с помощью браузера

Время на прочтение13 мин
Охват и читатели14K



Привет, друзья!


В этой статье я покажу вам, как делать селфи в браузере.


Мы разработаем простое приложение со следующим функционалом:


  • при инициализации приложение запрашивает у пользователя разрешение на захват медиапотока (далее также — поток) из видеокамеры его устройства;
  • захваченный поток передается в элемент video;
  • из потока извлекается видеотрек (далее также — трек), который передается в интерфейс для захвата изображений;
  • из экземпляра интерфейса извлекается список поддерживаемых возможностей (capabilities) и настроек (settings) для фото;
  • из трека также извлекается список поддерживаемых возможностей и настроек;
  • формируется список диапазонных полей (<input type="range">) для установки настроек для фото;
  • пользователь имеет возможность снимать фото (take photos) и захватывать фреймы (grab frames);
  • фото выводится в элемент img, генерируется ссылка для его скачивания;
  • фрейм инвертируется и отрисовывается на холсте (canvas), генерируется ссылка для его скачивания.

Репозиторий.


Приложение будет разработано на чистом JavaScript.


Для создания шаблона приложения будет использован Vite.


Если вам это интересно, прошу под кат.

Читать дальше →

Основные приемы работы с Canvas [Part 1]

Время на прочтение4 мин
Охват и читатели16K

Привет! Сегодня я хотел бы начать цикл статей на тему того, как работать с canvas в HTML5 и как применять знания в области матанализа для реализации необычных и интересных эффектов.

Все навыки и умения, которые мы получим здесь, являются фундаментальными принципами и могут быть использованы для создания различных эффектов в играх и приложениях.

Сегодня мы рассмотрим, как рисовать различные фигуры, и реализуем алгоритм fibonacci flower, также известный как golden ratio или phyllotaxis.

Читать далее

О чем вам не расскажут на курсах по Реакту. Вредные советы, как стать незаменимым разработчиком

Время на прочтение7 мин
Охват и читатели14K

Если ваша задача — не просто научиться писать код, а понять, как стать тем, без кого поддержка и развитие проекта просто немыслимы, то этот текст для вас. Заодно поговорим о том, как помочь коллегам постичь дзен и досконально изучить структуру разрабатываемого приложения.

Всем привет, меня зовут Макс Кравец, я CEO IT-компании Holyweb, и сегодня хочу поделиться вредными советами о том, как стать незаменимым React-разработчиком. Поехали!

Читать далее

График платежей с напоминалкой в Telegram с помощью Google Sheets & JavaScript

Время на прочтение4 мин
Охват и читатели17K

Меня заинтересовал челлендж: в течение 26 недель откладывать N+100 руб, где N - сумма, вложенная на прошлой неделе. Я решил откладывать деньги по средам, составил такую табличку в Google Sheets

Читать далее

Язык программирования типов, скрытый в TypeScript. Utility Types

Время на прочтение5 мин
Охват и читатели17K

TypeScript — это язык, расширяющий JavaScript, добавляя в последний типизацию. Правда, так как TypeScript не имеет runtime-а (почти), он транслируется в JavaScript, в процессе чего, вся типизация теряется. Такую типизацию можно назвать лишь инструментом статического анализа кода. Тем не менее — это очень мощный инструмент. К тому же, помимо проверки кода, типизация также и документирует его.

В данной статье я расскажу лишь про типы, объявленные через ключевое слово type, не касаясь интерфейсов и классов. Однако, эта тема шире, чем может показаться, и я надеюсь, что читатель узнает что-то новое для себя. Ведь с помощью type можно писать маленькие программки (далее, утилиты), которые выполняются в процессе статического анализа кода, расширяя его возможности.

Читать далее

Вклад авторов