Skip to content

Тестовое задание на позицию NodeJS Backend разработчика

Notifications You must be signed in to change notification settings

ScrabyQ/url-store-tgbot

Repository files navigation

Описание

Телеграм бот, который позволяет работать с ссылками - добавление, получение, удаление. Получение ссылок реализованно с помощью предоставления пользователем уникального кода (UUID) записи.

Решение подготовлено в рамках тестового задания. Исходные требования задания доступны по ссылке.

Демонстрационного бота можно найти здесь

Структура решения

Главная структура представлена следующим образом:

/src
├── bot            - Модуль и точка входа в бота
│   └── scenes     - Сцены обработчики логики
├── interfaces     - Интерфейсы
├── middlewares    - Middlewares
└── repository     - Репозиторий БД
    ├── entities   - Все сущности
    └── url        - Модуль сущности URL (CRUD по записям URL)

Сцены включают в себя все операции CRUD по общей бизнес логике, а так же общую сцену для роутинга

/scenes
├── add.scene.ts      - Обработка логики добавления ссылки пользователем
├── delete.scene.ts   - Обработка логики удаления ссылки пользователем
├── get.scene.ts      - Обработка логики получения одной ссылки пользователем
├── list.scene.ts     - Обработка логики получения постраничного списка ссылок
└── start.scene.ts    - Главная сцена

Запуск проекта

Установка зависимостей

$ yarn install

Создать файл с переменными окружение и их заполнение

cp .env-example .env

Запуск приложения в режимах разработки

# development
$ yarn run start

# watch mode
$ yarn run start:dev

# watch & debug mode
$ yarn run start:debug

About

Тестовое задание на позицию NodeJS Backend разработчика

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published