Тестовое задание для NodeJs разработчика
cp .example.env .env
docker-compose -f docker-compose.yml up
npm i pnpm -G
pnpm i
pnpm dev
Документация здесь
- Пароли не хранить в открытом виде
- Реализовать валидацию полей на api запросы с кодами ответов и сообщениями об ошибке в теле ответа
- Развернуть проект в любом удобном месте, что бы можно было прогнать тесты и проверить
- Код на github или gitlab
- Придерживаться принципам SOLID
- Токен авторизации живет 30 минут
- Реализовать endpoint для обновления токена
- Создать миграции
- Написать сопроводительную документация в README.md для разворота
- Реализовать offset или пагинацию для сущности TAG
- Реализовать Сортировку по полю sortOrder и(или) полю name для сущности TAG
- Использовать DTO
- Писать интерфейсы и реализовывать их
- Желательно не использовать ORM
- Написать DockerFile для приложения
- Написать docker-composer для локального разворота приложения
- Реализовать кеширование
- Покрыть тестами сами api
- Добавить генерацию swagger документации для api методов (или написать ручками и положит в проект в директорию /doc)
AUTH
- POST /signup
- POST /login
- POST /logout
USER
- GET /user
- PUT /user
- DELETE /user
- POST /user/tag
- DELETE /user/tag/{id}
- GET /user/tag
TAG
- POST /tag
- GET /tag/{id}
- GET /tag
- PUT /tag/{id}
- DELETE /tag/{id}