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

Typing SVG

Website YouTube VK VK Photo Telegram


Обо мне

  • Помимо программирования занимаюсь подводной и не только фотографией 🤿📸
  • Увлекаюсь яхтингом и виндсерфингом ⛵🏄
  • КМС по стрельбе из блочного лука 🏹

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


🤿 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.


🔧 Мои IDE

Репозиторий Описание
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


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

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