Skip to content

livevasiliy/task-tracker-cli

Repository files navigation

Трекер задач


О проекте

Этот проект является учебным проектом, реализованным на основе roadmap.sh https://roadmap.sh/projects/task-tracker

Трекер задач — это приложение для отслеживания и управления вашими задачами. В рамках этого проекта вы создадите простой интерфейс командной строки (CLI), который позволит вам отслеживать, что нужно сделать, что уже сделано и над чем вы работаете в данный момент. Этот проект поможет вам попрактиковаться в программировании, включая работу с файловой системой, обработку пользовательского ввода и создание простого CLI-приложения.


Требования

Приложение должно запускаться из командной строки, принимать действия пользователя и входные данные в качестве аргументов, а также хранить задачи в JSON-файле. Пользователь должен иметь возможность:

  • Добавлять, обновлять и удалять задачи.
  • Отмечать задачу как "в процессе" или "завершено".
  • Просматривать список всех задач.
  • Просматривать список завершенных задач.
  • Просматривать список незавершенных задач.
  • Просматривать список задач, находящихся в процессе выполнения.

Ниже приведены ограничения для реализации:

  • Вы можете использовать любой язык программирования для создания этого проекта.
  • Используйте позиционные аргументы в командной строке для приема пользовательского ввода.
  • Храните задачи в JSON-файле в текущей директории.
  • JSON-файл должен быть создан, если он не существует.
  • Используйте родной модуль файловой системы вашего языка программирования для взаимодействия с JSON-файлом.
  • Не используйте сторонние библиотеки или фреймворки для создания этого проекта.
  • Убедитесь, что ошибки и крайние случаи обрабатываются корректно.

Пример

Примеры команд и их использования приведены ниже:

# Добавление новой задачи
task-cli add "Купить продукты"
# Вывод: Задача успешно добавлена (ID: 1)

# Обновление и удаление задач
task-cli update 1 "Купить продукты и приготовить ужин"
task-cli delete 1

# Отметка задачи как "в процессе" или "завершено"
task-cli mark-in-progress 1
task-cli mark-done 1

# Просмотр всех задач
task-cli list

# Просмотр задач по статусу
task-cli list done
task-cli list todo
task-cli list in-progress

Свойства задачи

Каждая задача должна иметь следующие свойства:

  • id: Уникальный идентификатор задачи.
  • description: Краткое описание задачи.
  • status: Статус задачи (todo, in-progress, done).
  • createdAt: Дата и время создания задачи.
  • updatedAt: Дата и время последнего обновления задачи.

Убедитесь, что эти свойства добавляются в JSON-файл при создании новой задачи и обновляются при изменении задачи.

About

Реализация проекта Task Tracker CLI

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Languages