Pull to refresh
4
0
Send message

Представляю @vue-dnd-kit/components: Готовые компоненты для быстрой разработки интерфейсов с перетаскиванием

Level of difficultyEasy
Reading time8 min
Views6.6K

Представляю vue-dnd-kit/components — готовые компоненты для быстрой разработки drag & drop интерфейсов в Vue 3!

📋 Сортируемые таблицы
📊 Канбан-доски
🌳 Древовидные структуры
🧩 Интерактивные дашборды

CLI работает как shadcn/ui — компоненты клонируются в ваш проект, давая полный контроль над кодом. Проект в активной разработке, но уже готов к использованию!

Готовые компоненты: Table, Kanban, Tree, Dashboard.

Статус: бета, API может изменяться. Подходит для прототипов и активной разработки.

Читать далее

Как мы распилили монолит на микрофронтенды с Vite и не сошли с ума

Level of difficultyMedium
Reading time9 min
Views6.3K

Наш фронтенд начинался как простой SPA на React, собранный с помощью Vite — типичный монолит с несколькими страницами. Со временем проект оброс новыми функциями и интеграциями и начал становиться всё сложнее в поддержке.

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

После изучения разных вариантов мы остановились на подходе микрофронтендов. Хотелось разграничить зоны ответственности между командами и ускорить разработку, не теряя гибкости. В качестве сборщика решили остаться на Vite — он быстро развивался, предлагал отличную DX и поддержку модульной федерации через плагин. Кроме того, важно было сохранить единый репозиторий, чтобы упростить CI/CD и управление зависимостями.

Читать далее

Именно эти умения и навыки делают меня аналитиком

Level of difficultyMedium
Reading time7 min
Views16K

4 000 часов в роли системного аналитика или обзор навыков, умений и личных качеств, которые превращают человека в аналитика.

Читать далее

Тимлид или ведущий дейликов?

Level of difficultyEasy
Reading time8 min
Views2.5K

«У меня не тимлид, а просто ведущий дейликов!» — с горечью однажды воскликнул мой знакомый, и эта фраза послужила для меня поводом к написанию этой статьи. Ведь я тоже уже давно замечаю, что с ролью тимлида в последние годы происходит что-то не то. Причем как со стороны самих лидов, так и со стороны их руководителей

Читать далее

Type-level программирование в TypeScript: практические кейсы и обзор возможностей

Level of difficultyMedium
Reading time9 min
Views3.5K

Как использовать мощь системы типов TypeScript для вычисления логики ещё на этапе компиляции и автоматической генерации кода. Разбираем условные типы, шаблонные литералы, рекурсивные типы и другие приёмы, чтобы упростить разработку, сократить дублирование кода и снизить вероятность ошибок на runtime.

Читать далее

Как типы делают сложные задачи простыми

Level of difficultyMedium
Reading time20 min
Views20K

Последнюю пару лет мой мозг программиста всё больше увлекался типами, принципами функционального программирования и Typescript. По большей мере на это повлияло огромное количество времени, потраченное мной на кодовую базу Heartbeat — фулстек-приложения из трёхсот тысяч строк на Typescript, включающего в себя веб-приложение React, мобильное приложение React Native и сервер Node.js. Мой опыт работы с этой кодовой базой показал мне, что чем больше я полагаюсь на систему типов, тем больше пользы из этого извлекаю.

Написание кода в кодовой базе, полностью сделавшей упор на типы, похоже на жульничество. Часто я могу реализовать 80% новой фичи, ни разу не запустив код. Я начинаю работать над крупным рефакторингом, требующим нарушить допущение, принятое во всём коде, но вскоре выясняю, что благодаря системе типов изменения оказываются тривиальными. Простые фичи практически кодируют себя сами, потому что опечатки мгновенно отлавливаются, а половина моего кода пишется автодополнением. На вопросы от команды техподдержки о тонкостях работы какой-то фичи можно ответить при помощи Ctrl+F в коде, даже если письменной документации почти нет. Целые категории багов, с которыми мне приходилось бороться, попросту исчезли.

Я начал называть стиль кодинга, позволяющий реализовать подобное, Type Driven Development. В статье я приведу разрозненные мысли и ссылки на ресурсы, сильно повлиявшие на то, как я понимаю type driven development.
Читать дальше →

Vue 3 под капотом и тонкости Composition API: Reactivity, Provide/Inject, Suspense

Level of difficultyMedium
Reading time9 min
Views8.8K

Vue 3 уже давно в строю, но его "прокси-движок" и особенности Composition API по-прежнему раскрывают себя всё глубже. В статье мы разберём, как Track/Trigger помогают отслеживать изменения, зачем нужны customRef и как грамотно использовать <Suspense> для асинхронных компонентов. Всё это - на примерах и с советами по оптимизации в крупных проектах.
Приступаем к деталям!

Читать далее

Как создать архитектуру фронтенд-приложения, если ее нет от слова «совсем»

Level of difficultyEasy
Reading time9 min
Views2.8K

Всем привет! На связи Вадим Королев, архитектор на Web HiFi-стриминга Звук. Сегодня я хочу поделиться своим опытом и рассказать, как создать архитектуру фронтенд-приложения, если ее еще нет в вашей компании.

Каждый разработчик рано или поздно приходит к той степени зрелости, когда его начинают интересовать вопросы архитектуры на своем проекте. При детальном изучении темы оказывается, что все примеры в основном рассматривают что-то на бэкенде, вследствие чего встает вопрос: «А как готовить архитектуру для фронтенда?». Если в вашей команде больше одного человека, стоит с самого начала (независимо от размера проекта) озаботиться этим вопросом.

Читать далее

От живых гайдлайнов к Documentation as Code. Как изменилась документация во фронтенд-разработке

Level of difficultyEasy
Reading time4 min
Views4.3K

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

Читать далее

Мощь CSS-масок

Level of difficultyMedium
Reading time8 min
Views12K

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

В статье я кратко напомню основные теоретические идеи свойства и подробно расскажу о реальных примерах использования на основании опыта разработки Taiga UI.

Читать далее

Опенсорсные альтернативы Discord на своём сервере

Level of difficultyEasy
Reading time5 min
Views38K
Мессенджер Revolt

После блокировки Discord в РФ люди начали искать варианты решения проблемы. Легально это можно сделать двумя способами:

  1. Перейти на альтернативный мессенджер с централизованным управлением от сторонней компании (TeamSpeak, Skype и др.). Правда, некоторые аналоги Discord уже упали под нагрузкой и вынуждены ограничить доступ пользователям из РФ, как Guilded.
  2. Поднять собственный сервер.

Второй вариант кажется наиболее надёжным с учётом будущих блокировок. Ведь любой мессенджер из первого пункта может сам упасть или отказать в доступе с территории РФ, или его тоже внесут в чёрный список.

В итоге остаётся только свой сервер. Желательно в локальной сети или хотя бы на виртуальном хостинге.
Читать дальше →

Использование ChatGPT для автоматизации генерации кода в JS-проекте

Level of difficultyEasy
Reading time11 min
Views4.7K

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

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

Для тех же, кто хочет более детально ознакомиться с процессом взаимодействия человека и ChatGPT при создании JavaScript-проекта - добро пожаловать под кат.

Читать далее

Какой роутер для OpenWrt купить в 2025 году?

Level of difficultyEasy
Reading time21 min
Views296K

Я много пишу про OpenWrt и часто получаю вопросы о том, какой взять роутер под эту ОС. В прошлом году я уже делал обзор роутеров, лучше всего подходящих под OpenWrt. Тогда выбор был не очень большой, но сейчас всё изменилось в лучшую сторону. Поэтому я сделал новый актуальный разбор для тех, кто не знает, какой роутер выбрать.

Роутер, как и любой другой девайс, нужно покупать под запрос. Например, линуксоиды привыкли покупать ноутбуки именно под Linux, а не первый попавшийся. Также и тут: если нужен OpenWrt, то роутер тоже надо выбирать с умом, а не надеяться на то, что кастомная прошивка сделает конфетку из роутера за 700 р.

В 2023 и 2024 появились интересные роутеры, которые уже поддерживаются проектом OpenWrt. Эти роутеры сделаны на базе ARM-процессоров. Такие роутеры появились у нескольких компаний, и дальше их количество будет только увеличиваться.

Читать далее

IPv6 или противостояние занижению скорости Youtube

Level of difficultyMedium
Reading time5 min
Views79K

Если Вы являетесь счастливым обладателем маршрутизатора Mikrotik и у Вас белый IP адрес, а также надоело занижение скорости Youtube, то статья для Вас. Добро пожаловать!

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

Читать далее

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

Level of difficultyMedium
Reading time6 min
Views7.8K

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

Читать далее

Как готовить микрофронтенды в Webpack 5

Reading time9 min
Views21K

Всем привет, меня зовут Иван и я фронтенд-разработчик из компании DexSys.

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

Начнём с того, что ребята с Хабра (@artemu78, @dfuse, @Katsuba) уже писали про Module Federation, так что, моя статья - это не что-то уникальное и прорывное. Скорее, это шишки, костыли и велосипеды, которые полезно знать тем, кто собирается использовать данную технологию.

Читать далее

Микрофронтенды: разделяй и властвуй

Reading time6 min
Views26K


Всем привет! Меня зовут Аня, я фронтенд-разработчик в Delivery Club. Хочу рассказать про использование микрофронтендов. Поговорим о том, что же это за зверь такой — микрофронтенд, почему мы решили использовать этот подход в своих проектах и с какими проблемами столкнулись при внедрении.
Читать дальше →

Микросервис головного мозга. Пилим всё, что движется

Reading time13 min
Views14K

Это история о том, как увеличить скорость выкатки фич, но сохранить качество продукта. О болевых точках, которые замедляют разработку, и новой «болезни» — микросервисе головного мозга, которую диагностировал Михаил Трифонов, техлид фронтов в SberСloud. Он утверждает, что она приводит к росту функциональности ML Space на 683% при увеличении команды разработки всего в 2 раза. Невероятно, но бизнес-аналитика это подтверждает. Так что давайте разбираться по порядку.

Читать далее

Гайд по микрофронтендам на single-spa, или Как уже наконец-то уйти от монолита во фронтенде

Level of difficultyMedium
Reading time9 min
Views20K

Привет, Хабр! Меня зовут Данил, я Frontend-разработчик в Samokat.tech. Недавно мы с командой распилили монолит на Angular и перешли к микрофронтендам на Vue. 

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

Читать далее
1
23 ...

Information

Rating
Does not participate
Registered
Activity