Миграция существующего проекта с Yii2 на Laravel.
Проект MyCRM прошел несколько этапов эволюции, демонстрируя мои навыки адаптации и развития проектов:
Фаза 1: Наследие (Yii2)
- Первоначальная версия была разработана на Yii2
- Реализован базовый CRM-функционал: управление контактами, компаниями, сделками, задачами
- Работа с БД через ActiveRecord, базовая аутентификация
Фаза 2: Миграция и модернизация (Laravel)
- Полный рефакторинг архитектуры под Laravel 12
- Перенос бизнес-логики с сохранением всех данных
- Улучшение производительности за счет оптимизации запросов и кэширования
- Модернизация кодовой базы с применением лучших практик Laravel
- Покрытие кода тестами
Фаза 3: Расширение функционала
После успешного переноса были добавлены новые возможности:
- ✅ Интеграция с Telegram (уведомления)
- ✅ OAuth-авторизация через Google/GitHub
- ✅ Валидация email через API (Apilayer)
- ✅ Подтверждение email с кастомизируемыми шаблонами
- ✅ Автоматические уведомления о событиях через Observer
- ✅ Канбан-доска сделок с Drag&Drop (SortableJS)
- ✅ PDF-отчеты с фильтрацией (DomPDF/Barryvdh)
- ✅ Интерактивные графики для дашборда (Chart.js)
Yii-legacy код был переписан на Laravel, который имеет более востребованный стек на рынке, особенно в коммерческой разработке.
В процессе переписывания были применены современные практики (оптимизация, кеширование, тесты) с добавлением современных функций и улучшением архитектуры.
Продукт был не просто перенесен, но и улучшен.