Обновить
64K+

ReactJS *

JavaScript-библиотека для создания интерфейсов

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

Рецензия на книгу Владимира Дронова «Node.js, Express, MongoDB и React. 23 урока для начинающих», есть промокод

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели6.6K

В мире инструментов веб‑разработки особое место занимают технологии, объединенные аббревиатурой MERN (MongoDB, Express, React, Node.js), представляющие собой комплексное решение для разработки современных веб‑приложений. Книга Владимира Дронова «Node.js, Express, MongoDB и React. 23 урока для начинающих» представляет собой полезный ресурс для тех, кто хочет освоить этот стек технологий. И еще важно — это мощная книга на 600+ страниц, а не проходная брошюрка.

Читать далее

Путь развития Frontend разработчика (Вторая часть)

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели34K

Это вторая часть roadmap frontend разработчика, Если вы не читали первую часть, то настоятельно рекомендую ознакомится, Первая часть. В этой статье я продолжу вам рассказывать про мое представление современной карты развития frontend разработчика.

Читать далее

Использование кастомных шаблонов и конфигов для swagger-typescript-api

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

swagger-typescript-api - это мощный инструмент для генерации кода на основе OpenApi-контактов, о процессе работы с которым я рассказывал в предыдущей статье. Там же я упомянул, что его можно кастомизировать под нужды конкретного проекта с помощью своих шаблонов.

Именно кастомные шаблоны и бонусом, кастомная конфигурация, будут раскрыты в текущей статье. Поехали!

Читать далее

Кеширование next.js. Дар или проклятие

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

В 13 версии команда next.js представила новый подход к проектированию приложения - так называемый App Router. В 14 версии его сделали стабильным и основным для новых приложений.

App Router значительно расширяет функционал next.js - частичный пререндеринг, шаблоны, параллельные и перехватываемые роуты, серверные компоненты и многое другое. Однако, даже несмотря на все эти улучшения - далеко не все решили перейти на App Router. И на это есть свои причины.

О преимуществах и проблемах нового роутера я уже рассказывал в предыдущей статье. Дальше же речь пойдёт не о новых абстракциях или их особенностях. На самом деле ключевым и самым спорным изменением является именно кеширование. В этой статье будет рассказано что, зачем и как кеширует самый популярный фронтенд фреймворк - Next.js.

Читать далее

className убивает ваш UI kit

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.5K

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

Гибкое API у UI kit компонентов является преимуществом. Однако возможность повлиять на стили ваших компонентов в конкретном месте является большим искушением. Разработчику выгодно внести изменение здесь и сейчас, а не думать на перспективу. Такое поведение постепенно разрушает вашу систему переиспользования.

Читать далее ?

Мемоизация в React: я почитал документацию вместо вас

Уровень сложностиПростой
Время на прочтение18 мин
Охват и читатели47K

В статье рассмотрены три инструмента мемоизации в React: useMemo, useCallback, memo. Главный источник информации: документация React. Не всем комфортно работать напрямую с документацией, так что если вы постоянно откладываете погружение в документацию React - я сделал это за вас, постарался выделить самое важное, и дать ссылки для углубленного погружения.  

Так как мы будем рассматривать не самые базовые вещи, касающиеся React, то я не буду останавливаться на таких основах как хуки, состояние, свойства, чистые функции и чистые компоненты, ожидая, что вы ознакомитесь с ними за пределами статьи. А также все рассмотренное ниже относится в первую очередь к React 18. 

Читать далее

Работа с REST API при помощи swagger-typescript-api

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

Прежде чем начать писать данную статью, я озадачился интересным вопросом. А кто как вообще работает с API в 2024 году? Для меня наличие Swagger-контракта или OpenAPI-контракта уже несколько лет как must have. И откровенно говоря, мне сложно представить, что люди не используют этот фреймворк для работы c REST API. Однако, если среди читателей таковые есть, и вам до сих пор скидывают «дтоошки», то вперед осваивать и продвигать OpenApi.

Для понимания работы swagger-typescript-api я сначала кратко опишу основные моменты спецификации OpenAPI. Читатели, которые уже знакомы с этим, могут сразу перейти к части про swagger-typescript-api.

Читать далее

Web3 приложение Twitter на React.js + Solidity | часть 2

Уровень сложностиПростой
Время на прочтение21 мин
Охват и читатели3.3K

Hello, в первой части был подготовлен проект, подключены кошельки и написан backend на Solidity, значит пришло время писать frontend на React.

Проект далёк от продакшена и является простым примером для новичков, предназначенным для демонстрации взаимодействия с смарт‑контрактом через веб‑приложение.

Читать далее

Web3 приложение Twitter на React.js + Solidity | часть 1

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели7.3K

Hello, в этой статье постараюсь подробно показать процесс создания dApp приложения на примере Twitter. Проект написан на ReactJS и Solidity. Контракт развернут в частной сети с помощью truffle и ganache.

В первой части мы подготовим проект, напишем смарт-контракт и развернем его в частной сети, а также подключим кошельки в MetaMask.

Во второй части будет написано web-приложение для взаимодействия с контрактом.

Читать далее

«Физика для программистов» — как физтехи применяют её в приложениях. Бросок объекта под углом к горизонту

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели8.8K

Данная статья входит в цикл, освещающий задачи на моделирование физических процессов на факультете МТФИ ВШПИ. Мы написали приложение на Flutter и сайт на React для моделирования броска, расскажем о нашем опыте в этой статье.

Читать далее

Монорепозиторий с pnpm и typescript для фронтенда на React и бэкенда на Node.js

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

Устанавливаем pnpm, создаем воркспейсы для фронта и бека, импортируем что угодно из одного в другое, типизируем запросы и избавляемся от бойлерплейта.

Читать далее

Смена профессии и мой первый опыт в IT: путешествие в мир фронтенда с Tauri, REST и Fetch API

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели3.4K

Привет, Хабр! Меня зовут Гармаев Энхэ. В течение длительного времени я работал в сфере розничной торговли, занимая должность менеджера. Это было увлекательное и насыщенное время, но, как говорится, в жизни всегда есть место переменам и новым вызовам. Сегодня я хочу поделиться с вами своим путешествием, решением о смене профессии и первом опыте работы в IT компании.

Читать далее

На стороне своих правил в ESlint

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

Всем привет! Меня зовут Владимир Земсков, я работаю в B2C билайна, в команде билайн Про, где пишу бэк-офис для нашей системы. Мы помогаем нашей рознице продавать лучше и больше. Для соблюдения нужного уровня качества кода в билайне мы используем и ESlint, и тесты, и ревью, и особый тип — внутренние договорённости. 

Когда я пришёл в компанию, то мне захотелось найти ESlint-плагин, который бы помог автоматизировать часть работы. Я поискал, не нашёл, и в итоге решил написать свой. Из всей этой истории и родился сегодняшний рассказ. В первой части мы обсудим договорённости и их важность для разработки. А во второй — поговорим про то, как эти договорённости переносить в ESLint, как это упростит жизнь и действительно ли это это так сложно, или можно что-то упростить по пути.

Читать далее

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

Авторизация и управление доступом на основе ролей для фронтенда

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели13K

В этом модуле проекта мы погрузимся в волнующий мир авторизации и управления доступом во фронтенд-разработке. Сегодня я поделюсь с вами моим опытом работы с технологиями Vue 3, Pinia для глобального управления состоянием и TypeScript. Однако, стоит отметить, что основные принципы, которые мы рассмотрим здесь, применимы к любым современным технологиям фронтенда. Таким образом, даже если вы предпочитаете другой стек технологий, вы все равно найдете этот материал полезным.

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

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

Читать далее

Анатомия StyleX

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



Hello world!


По данным 2023 JavaScript Rising Stars библиотека StyleX заняла второе место в разделе Styling / CSS in JS (первое место вполне ожидаемо занял TailwindCSS).


stylex — это решение CSS в JS от Facebook, которое недавно стало открытым и быстро набрало популярность (на сегодняшний день у библиотеки 7500 звезд на Github). Это обусловлено ее легковесностью, производительностью и небольшим размером итоговой таблицы стилей.


В этой статье мы разберемся, как stylex работает. Но давайте начнем с примера ее использования.

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

Система иконок на React

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели13K

Очень часто при разработке React-приложения нам приходится работать с большим количеством иконок в проекте. Наверное, каждый разработчик стремится максимально упростить и автоматизировать подобные рутинные задачи. Есть несколько способов работы с иконками в веб-приложениях, но я хочу поделиться с вами именно тем, который кажется мне наиболее удобным. Данная статья поможет frontend-разработчику сделать работу с иконками комфортнее, используя их в качестве React-компонентов.

Читать далее

Микрофронтенд с использованием Module Federation. Соединяем компоненты между системами на разных фреймворках

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

Всем привет! Мы — Иван и Даниил, ведущие разработчики компании ITFB Group. У компании два собственных продукта — ЕСМ/CSP/BPM-платформа СИМФОНИЯ (документооборот, хранение контента, архив, портал) и система распознавания/обработки документов ITFB EasyDoc. Пару месяцев назад к нам прилетела задача интегрировать ряд функций распознавания из продукта ITFB EasyDoc и оформить их в отдельный модуль платформы СИМФОНИЯ, дабы пользователь всё делал в одном месте и не дрейфовал по разным системам. Однако возникла загвоздка: СИМФОНИЯ — на React, а ITFB EasyDoc — на Vue. Для решения вопроса посерчили различные источники информации и плавно ушли в собственное творчество, поскольку не обнаружили стоящих вариантов с вменяемой технической детализацией. В какой-то момент возникло острое желание поделиться нашими итоговыми наработками на Хабре и заполнить пробелы базы знаний в интернете по этому вопросу. Всем, кому интересно увидеть наше решение, добро пожаловать под кат :-)

Читать далее

Динамические Breadcrumbs на React, React Router и Apollo GraphQL

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели10K

Хлебные крошки - важнейшая часть навигации приложения. В классическом исполнении они отражают текущее положение пользователя в иерархии. А отображение названия карточки товара, статьи или любой другой сущности - это уже, как правило, задача компонента отвечающего за отображение самой сущности. Однако, все может оказаться не так просто. По каким-либо причинам дизайнер, заказчик или другая неведомая сила будет категорично настаивать, чтобы название отображалось именно в хлебных крошках.

Как бы то ни было, задача есть и ее нужно закрыть. Поэтому я и расскажу, как я с ней справился, в надежде получить одобрение или более элегантное решение) Погнали!

Читать далее

NLUX: Библиотека интерфейса Conversational AI

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

В современном мире взаимодействие с компьютерами и приложениями становится все более естественным и удобным благодаря использованию разговорных интерфейсов и искусственного интеллекта. Однако, интеграция таких функциональностей в веб-приложения может стать вызовом для разработчиков. В этом контексте библиотека NLUX (Natural Language User Experience) приходит на помощь, предоставляя инструменты для создания разговорных пользовательских интерфейсов в приложениях React.

В этой статье мы рассмотрим основные возможности и преимущества NLUX, а также рассмотрим примеры использования и интеграции данной библиотеки в разработку веб-приложений.

Начнем (:

Читать далее

Новые клиентские хуки React 19

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



Вопреки распространенному мнению, основная команда разработчиков React занимается не только серверными компонентами React и Next.js. В следующей версии — React 19 — появятся новые клиентские хуки. Они сфокусированы на двух ключевых аспектах: выборке данных и работе с формами. Эти хуки повысят производительность всех React-разработчиков, включая тех, кто создает одностраничные приложения.

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