TODO
- Сделать нормальную документацию
- Авторизация
- Листинг и управления пользователями для sudo - админа
- Логирование очередей
- Профиль пользователя
- Внешний профиль пользователя
- Техническая поддержка
- Уведомления
- Услуги и тарифы
- Подсчет занимаемого места и т.д.
- Бэккапы
О проекте
Описание
Требования
- php 7.2
- Mysql 5.7
Установка
git clone https://github.com/pavel-one/MicroPanel.git
composer install
cp .env.example .env
php artisan key:generate
- В .env меняем то что нужно поменять, следуем комментариям
php artisan migrate --seed
npm install
npm run watch
IDE Helper-commands
Это специальное дополнение, дабы помочь IDE понимать абстракции и фасады laravel
php artisan ide-helper:models -W
- Добавить автоматическую генерацию phpDoc для моделейphp artisan ide-helper:generate
- Генерация ide_helper файлаcomposer run-script post-update-cmd
- Обновить все
Правила мерджа
- Каждый человек работает в отдельной ветке которая отталкивается от мастера
- Название ветки должно быть максимально понятной и обозначать тот фронт работ, что вы взяли
- Мерджить в мастер категорически запрещено
- Каждый коммит относящийся к issue должен начинаться с id issue
#24 CommitName
- Если мы создаем новую модель, мы обязательно делаем к ней сидеров
Делаем наш первый PR
- Разворачиваем проект
- Создаем новую ветку и переключаемся в нее
- Делаем изменения в проекте, коммитим и пушим
- Переходим в PR
- Жмем
New pull request
Base: master -> Compare: YourBranchName
- Разрешаем конфликты и жмем
Create pull request
- Подробно описываем что сделали и какие дополнительные действия нужно произвести Если нужно
- Reviewers и Assignees указываем Pavel Zarubin
- Даже после PR можно дополнять коммитами его, но ДО его принятия ревьювером
Начинаем новую задачу
- Создаем новую ветку
git pull origin master
Вливаем в нее изменения из мастераcomposer install
- если были измнения с пакетамиphp artisan migrate:refresh --seed
- полностью перестраеваем бд с сидорами
Правила кода
- Бизнес - логику храним в сервисах
- Для логирования используем разные каналы, например если вы разрабатываете модуль оплаты, то канал для его логирования должен называться payment а логи кластся в отдельную папку
- Модели должны быть рассортированы по папкам
- Не забываем правильно указывать индексы в БД
- Модели создаем с миграциями, не по отдельности, это позволит избежать проблем
php artisan make:model ComponentName/ModelName -m
- Модели всегда называются в единственном числе
- Если нам нужно изменить существующую таблицу, мы не меняем миграцию, а создаем отдельную
- Соблюдаем правильное именование сетеров и гетеров
- В именовании сервисов, моделей, переменных используем CamelCase а не SnakeCase
- Для контроллеров ресурсов обязательно ставим флаг resource
php artisan make:controller ModelNameController --resource
- Если добавляется новый конфиг, добавляем его и в .env.example