Skip to content

Task Manager – система управления задачами. Она позволяет ставить задачи, назначать исполнителей и менять их статусы. Для работы с системой требуется регистрация и аутентификация.

Notifications You must be signed in to change notification settings

bysynth/php-project-lvl4

Repository files navigation

Проект «Менеджер задач»

Actions Status Github Actions Status Maintainability Test Coverage

Полноценный веб-сайт на базе фреймворка Laravel.

В этом проекте большое внимание уделяется созданию сущностей с помощью ORM Eloquent и описанию связей между ними (o2m, m2m). Наличие сущностей даёт более простую работу с тестами. Тестовые данные создаются не руками, а с помощью механизма фабрик. Фабрики описывают формат данных и по запросу создают сущности, сразу добавляя их в базу.

Для большего уровня автоматизации, в проекте используется ресурсный роутинг, который позволяет унифицировать и упростить работу с типичными CRUD–операциями.

CRUD-операции тесно связаны с формами, которые используются для создания и редактирования сущностей. Формы в проекте реализованы при помощи библиотеки laravelcollective/html.

Авторизация – процесс выдачи прав на действия над ресурсами и контроля их выполнения. В проекте авторизация отрабатывается на 100%.

Одна из важных и типовых задач в веб-разработке – создание форм для фильтрации данных. Фильтрация данные реализована в проекте при помощи библиотеки spatie/laravel-query-builder.

Эксплуатация проекта не менее важна чем разработка. Разработчик должен быть уверен, что его код работает правильно, и для этого он пишет тесты. Но тесты не могут гарантировать 100% работоспособности, поэтому нужен механизм отслеживающий ошибки возникающие в продакшене и оповещающий о них. Эту задачу решают коллекторы ошибок, отслежиние ошибок на продакшене реализовано при помощи сервиса Rollbar.

Демо на Heroku: https://bysynth-task-manager.herokuapp.com/

Требования

  • PHP ^8.0
  • Composer
  • Node.js (v14+) & NPM (6+)
  • SQLite

Установка

git clone https://github.com/bysynth/php-project-lvl4.git task-manager
cd task-manager
make setup

Запуск

make start

About

Task Manager – система управления задачами. Она позволяет ставить задачи, назначать исполнителей и менять их статусы. Для работы с системой требуется регистрация и аутентификация.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages