Skip to content
View bad4iz's full-sized avatar

Block or report bad4iz

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
bad4iz/README.md

Привет, я Евгений aka Bad4iz

Lead Frontend Developer · React · Vue · TypeScript

Typing SVG

Website YouTube VK VK Photo Telegram


Обо мне

Frontend-разработчик и технический лидер. С 2019 года совмещаю непосредственную разработку с руководством frontend-командами. Основной стек — React, Vue.js и TypeScript.

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

Коммерческие проекты

АСУ ОДС 2.0 — управление объектами городского хозяйства Москвы. В роли Lead Frontend Developer руководил разработкой интерфейсов реестров, паспортизации, согласований и отчётности. Развивал общие компоненты, сложные формы и таблицы, работал с картографией и электронной подписью КриптоПро. Перевёл сборку на Vite, обновил React и тестовое окружение, восстановил Storybook.

React · TypeScript · TanStack Query · Material UI · React Final Form · OpenLayers · Vitest

АИС «Таксомотор» — реестры такси, перевозчиков и разрешения на перевозки. В роли Lead Frontend Developer руководил frontend-разработкой: развивал архитектуру и общие компоненты, реализовывал ключевые пользовательские сценарии и интеграцию с сервисом электронного подписания документов.

React · TypeScript · TanStack Query · Ant Design

Brixby — зарядка электромобилей. Руководил frontend-разработкой клиентского веб-приложения для запуска зарядки и оплаты зарядных сессий. Совмещал техническое лидерство с непосредственной разработкой ключевых пользовательских сценариев.

Vue.js


🤿 Depthline — мой продукт для фридайвинга и дайвинга

От данных на дайв-компьютере до истории, которую хочется сохранить.

Разрабатываю Depthline — визуальный журнал погружений: Android-приложение, интерактивный лендинг и серверную веб-платформу. Проект объединяет моё увлечение подводным миром и разработку продукта целиком — от работы с устройством до интерфейса, сайта и выпуска обновлений.

Посмотреть Depthline Android APK

Дизайн лендинга Depthline: подводная сцена, навигация по глубине и приглашение скачать приложение

📱 Depthline · приложение

Погружения с часов становятся наглядным личным журналом. Загрузка со Scorpena Alpha по Bluetooth LE, профили глубины и температуры, календарь и фридайв-сессии. Локальная база хранит историю на телефоне; импорт и экспорт UDDF, резервные копии и PDF-логбук помогают переносить и сохранять данные. Карточки сессий для ленты и сторис превращают результат тренировки в изображение, которым удобно поделиться.

Flutter · Dart · Riverpod · SQLite · Bluetooth LE

🌊 Depthline Landing · погружение в продукт

Знакомство с приложением начинается с ощущения глубины. Адаптивный лендинг с собственной WebGL-анимацией волн, переходами между сценами и шкалой глубины. Реальные экраны приложения, видеоуроки и короткие инструкции ведут посетителя от первого знакомства к установке. Отдельные страницы про логбук, UDDF и Scorpena Alpha, метаданные и sitemap готовят сайт к поисковому продвижению.

JavaScript · HTML / CSS · WebGL / GLSL · SEO

⚙️ Depthline Web · платформа и выпуск

За презентацией продукта — инфраструктура его развития. Объединил лендинг и серверную часть на Laravel: страницы продукта и история версий, доставка APK и видео, API событий и инструменты статистики. Настроил проверки в CI и автоматическую публикацию сайта с резервным копированием, миграциями и возможностью отката кода.

Laravel · PHP · MySQL · Docker / Sail · GitHub Actions

Мой вклад: продуктовые сценарии и UX/UI, мобильная и веб-разработка, интеграция с оборудованием, визуализация данных, тестирование и CI/CD — полный цикл работы над собственным продуктом.

Открыть сайт → · История версий и APK →


🛠 Технологии

Веб-приложения, картография, тестирование, 3D-графика и мобильная разработка — технологии из моих рабочих и личных проектов.

💻 Языки

JavaScript TypeScript PHP Python Java Core Lua

⚛️ Веб-приложения

React Vue.js Nuxt React Query Redux Vuex Vue Router Vue I18n React Router

🎨 Вёрстка и UI

HTML5 CSS Sass / SCSS Tailwind CSS Vuetify BootstrapVue MUI Ant Design Emotion

🧩 Сервер и API

Node.js Laravel Slim Framework GraphQL Apollo Client SignalR

🧰 Формы и таблицы

React Final Form Redux Form React Table dnd-kit

🗺️ Карты и геоданные

2GIS MapGL OpenLayers Turf.js Proj4js

🧪 Тестирование и качество

Vitest Jest ESLint Prettier React Testing Library Storybook Husky Commitlint

📦 Сборка и CI/CD

Vite Webpack Vue CLI Git GitHub Actions Travis CI GitLab CI/CD TypeDoc

🧊 3D, анимация и графы

Three.js WebGL GLSL GSAP React Three Fiber vis-network

📱 Мобильная разработка

Dart Flutter Kotlin Android Riverpod Bluetooth LE

🗄️ Окружение и базы данных

Docker Docker Compose MySQL SQLite Linux Bash Nginx

⌨️ Редакторы и CLI

Neovim OpenCode LazyGit

📚 Ранее изучал и использовал

Angular 2

Учебный опыт с Angular 2.


🔧 Рабочее окружение

Работаю в Neovim на раздельной клавиатуре. Развиваю собственные конфигурации редактора и настраиваю инструменты под свой рабочий процесс.

Репозиторий Описание
nvimVScode Персональная конфигурация Neovim для веб-разработки
AstroNVim v4 config Моя настройка AstroNvim v4

🌍 Вклад в Open Source

Slim Framework

Slim

Создал русскую документацию для фреймворка

Vuetify

Vuetify

  • Инициатор мультиязычной документации
  • Русская локализация
  • Баг-фиксы

Contributor

  • Three.js
  • Vitest

📦 NPM Пакеты

Пакет Скачиваний Описание
shallowly npm Modern shallow renderer for React 18+
color-picture npm Получение среднего цвета изображения
lazy-with-preload npm React lazy с предзагрузкой
file-signature-in-react npm Компонент для подписи файла ЭЦП
crypto-pro-cadesplugin npm API для КриптоПро
cuon-matrix npm Матрицы для OpenGL/WebGL
prettier-plugin-delete-eslint-disable npm Удаление eslint-disable

🎮 Демо проекты

Проект Превью
3D Audio Visualizer Three.js визуализация аудио
Scroll Animation Скролл эффекты на Three.js

📊 Есть немного на Codewars

Codewars


Вне кода

Кандидат в мастера спорта по стрельбе из блочного лука. Занимаюсь яхтингом, виндсерфингом, фридайвингом и подводной фотографией. Обладатель медали регаты «Гонка на приз памяти Дыбова» (2026).

Увлечение погружениями стало основой моего проекта Depthline — визуального журнала для фридайвинга и дайвинга.

"Мастерство — это не 10 000 разных выстрелов. Это один выстрел, повторённый 10 000 раз."


💭 Моя философия

"Я не слишком хороший программист. Но я программист с хорошими привычками"

— Кент Бек

✦ Самый лучший код — не написанный код
✦ Самый большой грех — переоптимизация
✦ Код должен легко умирать
✦ Код должен быть простым в чтении и понимании
✦ Правило пионера: оставляй код лучше, чем он был
✦ Безумие — делать одно и то же и ждать разных результатов
✦ Код без тестов — это legacy код

Tests


🔗 Ещё обо мне

🌐 bad4iz.ru — мой личный сайт: заметки о жизни, прочитанные книги и интерактивные финансовые калькуляторы.

Strava Stack Overflow MDN

📚 Прочитанные книги bad4iz.ru/books-read
🎙 Подкаст Веб-стандарты Выпуск на YouTube
🎓 Курс по React Query YouTube Playlist

Profile Views

Pinned Loading

  1. crypto-pro-cadesplugin crypto-pro-cadesplugin Public

    JavaScript-библиотека для работы с сертификатами и создания электронной подписи через «КриптоПро ЭЦП Browser plug-in».

    JavaScript 13 5

  2. file-signature-in-react file-signature-in-react Public

    Компонент на реакте для подписи файла Крипто Про с помощью плагина «КриптоПро ЭЦП Browser plug-in»

    TypeScript 6 1

  3. lazyWithPreload lazyWithPreload Public

    JavaScript 1

  4. svg-in-3d svg-in-3d Public

    трансформируем SVG картинки в 3D с помощью Three.js

    JavaScript 3

  5. slim.ru slim.ru Public

    перевод документации php framework slim slimframework.ru

    3 1

  6. react-query-learning react-query-learning Public

    видео уроки по либе react query

    JavaScript 1