Журнал расхода времени
Реализуйте сервис, позволяющий отслеживать, куда расходуется ваше время.
Основные возможности проекта
- Кнопки для отметки деятельности (по умолчанию: "работаю" и "отдыхаю").
- Добавление своих категорий дел (создание новых кнопок).
- Удаление категорий.
- Статистика времени по дням, неделям, месяцам, годам, заданному периоду, за все время.
- Данные хранятся в localStorage.
Главная страница
На странице должны быть размещены:
- Кнопки для выбора текущей деятельности.
- Блок с текущим состоянием (что сейчас делается и сколько времени).
- Раздел управления категориями.
- Блок с краткой статистикой за сегодня.
Кнопки деятельности
По умолчанию на странице есть две кнопки:
- "Работаю" - пользователь начинает работать.
- "Отдыхаю" - пользователь начинает отдыхать.
При нажатии на кнопку начинается отсчет времени в этой категории. При переключении на другую категорию отсчет предыдущей заканчивается и фиксируется.
Управление категориями
Пользователь может добавлять свои категории дел:
- Добавление - форма с полем для названия категории и кнопкой "Добавить категорию".
- Удаление - удаление категории (кнопка "Удалить" рядом с категорией).
При добавлении новой категории на странице появляется соответствующая кнопка.
Текущее состояние
На странице отображается текущее состояние пользователя:
- Какая категория выбрана в данный момент.
- Сколько времени в ней уже проведено (таймер).
Статистика
Сайт должен предоставлять статистику времени за разные периоды:
- За сегодня.
- За неделю (последние 7 дней).
- За месяц (текущий месяц).
- За год (текущий год).
- За заданный промежуток времени (выбор даты начала и конца).
- За все время (с первой записи).
Статистика должна отображать:
- Время, проведенное в каждой категории (в часах и минутах).
- Общее время за период.
Хранение данных
Все данные (отметки времени, категории) хранятся в локальном хранилище браузера (localStorage). При загрузке страницы данные загружаются из хранилища, при изменении - сохраняются обратно.
Дополнительные возможности
- Экспорт данных в CSV.
- Визуализация статистики в виде диаграммы.