go-cli

2

Описание

Простой и эффективный CLI менеджер задач, написанный на Go с использованием библиотеки Cobra.

https://test.ru

Языки

  • Go100%
7 месяцев назад
7 месяцев назад
7 месяцев назад
7 месяцев назад
7 месяцев назад
7 месяцев назад
7 месяцев назад
7 месяцев назад
месяц назад
README.md

Task Manager CLI

Простой и эффективный CLI менеджер задач, написанный на Go с использованием библиотеки Cobra.

🚀 Возможности

  • Добавление задач - создание новых задач с названием и описанием
  • Просмотр задач - список всех задач с детальной информацией
  • Отметка выполнения - изменение статуса задач
  • Удаление задач - удаление ненужных задач
  • Интерактивный режим - удобное меню для работы с задачами
  • HTTP API сервер - REST API для интеграции с другими приложениями
  • Автоматические ID - простая нумерация задач
  • JSON хранение - данные сохраняются в структурированном формате

🛠️ Установка

Требования

  • Go 1.24.0 или выше

Сборка

📖 Использование

Основные команды

Интерактивный режим

Запустите

go run main.go interactive
для работы через удобное меню:

=== Task Manager CLI=== 1. Add a new task 2. List all tasks 3. Mark a task as completed 4. Delete a task 5. Exit

HTTP API

Сервер запускается на

http://localhost:8080
и предоставляет REST API:

GET /api/tasks - получить все задачи POST /api/tasks - создать новую задачу GET /api/tasks/:id - получить задачу по ID PUT /api/tasks/:id - обновить задачу DELETE /api/tasks/:id - удалить задачу PATCH /api/tasks/:id/complete - отметить как выполненную

🏗️ Архитектура

go-cli/ ├── cmd/ # Команды CLI │ ├── root.go # Корневая команда │ ├── add.go # Добавление задач │ ├── list.go # Просмотр задач │ ├── complete.go # Отметка выполнения │ ├── delete.go # Удаление задач │ ├── interactive.go # Интерактивный режим │ └── server.go # HTTP сервер ├── internal/ # Внутренняя логика │ ├── models/ # Модели данных │ │ └── task.go # Структура задачи │ └── storage/ # Хранение данных │ └── task_storage.go # Операции с задачами ├── main.go # Точка входа └── tasks.json # Файл с данными (создается автоматически)

📝 Структура задачи

🔧 Разработка

Добавление новых команд

  1. Создайте файл в папке
    cmd/
  2. Определите команду с помощью Cobra
  3. Добавьте в
    init()
    функцию:
    rootCmd.AddCommand(yourCmd)

Добавление новых функций

  1. Создайте функции в
    internal/storage/
  2. Используйте их в командах CLI
  3. Добавьте соответствующие HTTP endpoints

📄 Лицензия

Этот проект распространяется под лицензией MIT. См. файл LICENSE для подробностей.

🤝 Вклад в проект

  1. Форкните репозиторий
  2. Создайте ветку для новой функции
  3. Внесите изменения
  4. Создайте Pull Request

📞 Поддержка

Если у вас есть вопросы или предложения, создайте Issue в репозитории.


Task Manager CLI - простой способ управлять задачами через командную строку! 🎯