📋 Todo REST API Простой и эффективный REST API для управления задачами, написанный на Go с чистым кодом и архитектурой.
🚀 Быстрый старт bash
git clone cd restapi
go run main.go ✅ Сервер запущен: http://localhost:9091
📖 Документация API 🔸 Создать задачу POST /tasks
json { "Title": "Изучить Go", "Description": "Пройти курс программирования" } → 201 Created с созданной задачей
🔸 Получить все задачи GET /tasks → 200 OK со списком задач
🔸 Получить невыполненные задачи GET /tasks?completed=false → 200 OK с активными задачами
🔸 Получить задачу по названию GET /tasks/{title} → 200 OK с задачей или 404 Not Found
🔸 Изменить статус задачи PATCH /tasks/{title}
json { "Complete": true } → 200 OK с обновленной задачей
🔸 Удалить задачу DELETE /tasks/{title} → 204 No Content
🏗️ Структура проекта text restapi/ ├── main.go # Точка входа ├── todo/ # Бизнес-логика │ ├── task.go # Структура задачи │ └── list.go # Менеджер задач ├── http/ # HTTP слой │ ├── dto.go # Data Transfer Objects │ ├── handlers.go # HTTP обработчики │ └── server.go # HTTP сервер └── go.mod # Зависимости 📦 Технологический стек Go 1.21+ - Основной язык
gorilla/mux - Маршрутизация
Standard Library - Минимализм и скорость
JSON - Формат обмена данными
🛡️ Особенности ✅ Чистая архитектура - Разделение слоёв ✅ Детальная валидация - Контроль входящих данных ✅ Понятные ошибки - JSON с timestamp ✅ RESTful подход - Стандартные HTTP методы ✅ Простота - Минимум зависимостей