Органайзер проектов

Реализуйте планировщик дел, разбитых по проектам.

Основные возможности проекта

Главная страница

На странице должны быть размещены:

Проекты

Проекты выводятся в виде ссылок. При клике на проект открывается список дел для данного проекта. Рядом с каждым проектом должны быть кнопки:

Внизу списка проектов должна быть форма для добавления нового проекта (инпут и кнопка "Добавить проект").

Список дел

При выборе проекта отображается список дел этого проекта. Каждое дело должно содержать:

Статусы дел

Каждое дело может находиться в одном из трех статусов:

Пользователь может менять статус дела кнопками или чекбоксом, автоматически перемещая его между статусами. Просроченный статус может устанавливаться автоматически, если дело не завершено вовремя.

Добавление дела

Над списком дел должна быть форма для добавления нового дела с полями:

Редактирование дела

При нажатии на кнопку "Редактировать" открывается форма с текущими данными дела. После редактирования и нажатия на кнопку "Сохранить" запись обновляется.

Удаление дела

При нажатии на кнопку "Удалить" появляется подтверждение (confirm), после чего дело удаляется из списка.

Отметка дела выполненным

При нажатии на чекбокс или кнопку "Сделано" дело переводится в статус "Готово". Визуально дело меняет стиль (перечеркивание, изменение цвета). Повторное нажатие возвращает дело в статус "В работе".

Хранение данных

Все проекты и дела должны храниться в локальном хранилище браузера (localStorage). При загрузке страницы данные загружаются из хранилища, при изменении - сохраняются обратно. Структура хранения должна содержать список проектов и внутри каждого проекта список дел с их статусами.

Дополнительные возможности