BookingAPI — это прототип бэкэнд сервиса для бронирования отелей, написанный на языке Go. Этот проект демонстрирует мои навыки в разработке на Go и может служить основой для реального приложения. В настоящее время приложение использует память для хранения данных, однако архитектура легко позволяет перейти на использование внешнего хранилища.
Чтобы запустить сервер, выполните команду:
make runДля запуска тестов используйте:
make testЧтобы создать бронирование, выполните команду:
curl --location --request POST 'localhost:8080/orders' \
--header 'Content-Type: application/json' \
--data-raw '{
"hotel_id": "reddison",
"room_id": "lux",
"email": "[email protected]",
"from": "2024-01-02T00:00:00Z",
"to": "2024-01-04T00:00:00Z"
}'- cmd/app/main.go — входная точка приложения.
- internal/service — реализация сервисного слоя HTTP, обработка запросов и преобразование данных.
- internal/handlers — бизнес-логика, независимая от транспортного слоя.
- internal/dao — доступ к данным и работа с хранилищем.
Проект использует стандартную библиотеку Go и HTTP роутер Chi.
Клонируйте репозиторий:
git clone https://github.com/LKarataev/BookingAPI.gitПерейдите в директорию проекта:
cd BookingAPIУстановите зависимости:
go mod tidy