Dauren Abasov
0
01Избранные проекты

Проектов
9
Годы
2022 — 2026
Роль
Frontend
02Open source

Библиотеки

Когда решение на проекте оказывается полезным и за его пределами, я выношу его в отдельный пакет. Им пользуются другие разработчики — цифры ниже обновляются с npm.

01

1,2 тыс.

скачиваний за месяц

В официальном каталоге модулей Nuxt

vue-why-render

Показывает, какие компоненты Vue перерисовываются — и почему

Обычные инструменты только подсвечивают перерисовку. vue-why-render называет конкретную реактивную зависимость, которая её вызвала, и ловит частую ловушку: новая ссылка с тем же значением.

  • Оверлей и плавающая панель со статистикой, деревом компонентов и лентой событий
  • Интеграция с инспектором и таймлайном Vue DevTools
  • Проверки в тестах, чтобы лишние рендеры не вернулись
  • Отчёты сессий в JSON со сравнением «до / после»
  • Vue 3
  • Nuxt module
  • TypeScript
  • DevTools API
02

146

скачиваний за месяц

@bigplay/tree-view

Деревья и турнирные сетки для Vue 3, Vue 2 и Nuxt без зависимостей

Выросла из турнирной сетки BIGPLAY: я вынес её из основного кода в отдельный пакет. Платформа стала проще на 1000+ строк, а сетку теперь можно подключить в любом проекте на Vue 3.

295
элементов в DOM на сетке из 4095 матчей — без виртуализации их 36 899
4 мс
отрисовка той же сетки вместо 161 мс — в 40 раз быстрее
16×
быстрее разбор сетки на 131 071 матч: обход был O(n²) из-за shift(), стал O(n) — 640 мс → 40 мс
5,9 мс
раскладка 16 383 матчей; 1023 матча — 0,3 мс
  • Своя раскладка примерно в 100 строк вместо d3: листья идут по порядку, родитель встаёт по центру своих детей
  • Тормозит не математика, а DOM: 1023 матча раскладываются за 0,3 мс, а рисуются без виртуализации 44 мс. Поэтому в DOM живут только карточки на экране, а холст всё равно считается по всему дереву, и страница не прыгает
  • Вся математика — в ядре на чистом TypeScript, без единой строчки Vue; адаптеры для Vue 3 и Vue 2 тонкие, около 200 строк
  • Данные пользователя только читаются, никаких мутаций; 283 автотеста, все проходят
  • TypeScript
  • Vue 3
  • Vue 2
  • Nuxt module
  • SVG
  • Vitest
03

1,8 тыс.

скачиваний за месяц

vue-llm

AI SDK для Vue и Nuxt: стриминговый чат, вызов инструментов и модели прямо в браузере

useChat() со стримингом, вызовом инструментов и несколькими провайдерами — в 10 строк. Один API для OpenAI, Anthropic, Gemini и Ollama, а через WebGPU модель можно запустить на устройстве пользователя — без сервера и API-ключа.

  • Generative UI: вызовы инструментов рендерятся вашими Vue-компонентами, с потоковыми аргументами и подтверждением от человека
  • Модели Llama, Qwen и SmolLM на WebGPU — данные не покидают устройство
  • Вкладка LLM в Vue DevTools: таймлайн запросов, время до первого токена, вызовы инструментов и расход токенов
  • Ноль runtime-зависимостей — только vue в peer; композаблы работают и на Vue 2.7
  • Vue 3
  • Vue 2.7
  • Nuxt module
  • TypeScript
  • SSE
  • WebGPU

Открыт для фриланса и работы в продуктовых командах. Расскажите о задаче — предложу решение, сроки и бюджет.