Skip to content

항상 고민되는 선물, 간단한 선택 몇 번으로 상대방에 맞는 선물 추천 서비스 🎁

Notifications You must be signed in to change notification settings

projectGift/server

Repository files navigation

이거 어때

프로젝트 배너

🎁 항상 고민되는 선물, 간단한 선택 몇 번으로 대상 인물에 맞는 선물 추천 서비스
https://solrasido55.shop


프로젝트 정보

서비스 개요

선물을 고르는 것은 때로는 쉽지 않은 일입니다. 대상자의 취향, 관심사, 나이, 성별 등 여러 가지 조건과 상황을 고려해야 하기 때문입니다. 선물을 선택하는 과정에서 겪는 고민과 부담을 줄이기 위해, 이거 어때 서비스는 고객이 입력한 정보를 바탕으로 적절한 선물을 추천합니다.

성별, 나이, mbti, 성향, 나와의 관계, 알고 지낸 기간, 취미, 계절, 기념일에 따라 적합한 선물을 추천하고, 바로 구매사이트로 이동이 가능합니다. 또한 유저 피드백을 받을 수 있도록 구현했습니다. 어떤 선물을 해주면 좋아할지 고민하고, 뻔하지 않은 선물을 해주고 싶은 분들을 위해 기획한 서비스입니다.

개발 기간

2022.12.28 ~ 2023.02.20 (8주)

참여 인원

Designer & PM Front-end Dev. Back-end Dev.
송보현 김솔 이진혁 김택수 박은송
avatar avatar avatar avatar

Back-end 담당 업무

김택수

  • 상품 추천 로직 설계 및 API 개발
  • Database raw data Importing 기능 구현

박은송

  • 상품 및 서비스 만족도 수집 API 개발
  • CI/CD 파이프라인 설계 및 서버 Docker 컨테이너화

Stacks

Environment

Development

Communication




주요 기능

<비디오/GIF>

선물 추천 기능

  • 사용자가 입력한 선물을 받는 대상의 조건과 데이터베이스 내 각 선물 데이터의 라벨링된 조건 비교/매칭 후 반환

<비디오/GIF>

추천 선물 및 "이거 어때" 서비스 만족도 작성 기능

  • 추천 받은 선물에 대한 만족도와 서비스 만족도 평가를 사용자가 입력

API 주소 목록


참고 자료

디렉토리 구조

.
├── Dockerfile
├── Dockerfile.dev
├── README.md
├── db
│   └── schema.sql
├── docker-compose.yml
├── nest-cli.json
├── nginx
│   ├── Dockerfile
│   └── default.conf
├── package-lock.json
├── package.json
├── pull_request_template.md
├── src
│   ├── app.module.ts
│   ├── common
│   │   ├── Exceptions
│   │   │   └── httpExceptionFilter.ts
│   │   └── config
│   │       ├── ormconfig.ts
│   │       └── swaggerconfig.ts
│   ├── data-import
│   │   ├── data-import.controller.spec.ts
│   │   ├── data-import.controller.ts
│   │   ├── data-import.module.ts
│   │   ├── data-import.service.spec.ts
│   │   ├── data-import.service.ts
│   │   ├── entities
│   │   │   ├── age_lists.entity.ts
│   │   │   ├── event_lists.entity.ts
│   │   │   ├── gender_lists.entity.ts
│   │   │   ├── hobby_lists.entity.ts
│   │   │   ├── mbti_lists.entity.ts
│   │   │   ├── personality_lists.entity.ts
│   │   │   ├── products.entity.ts
│   │   │   ├── products_age_lists.entity.ts
│   │   │   ├── products_event_lists.entity.ts
│   │   │   ├── products_gender_lists.entity.ts
│   │   │   ├── products_hobby_lists.entity.ts
│   │   │   ├── products_mbti_lists.entity.ts
│   │   │   ├── products_personality.entity.ts
│   │   │   ├── products_relation_lists.entity.ts
│   │   │   ├── products_season_lists.entity.ts
│   │   │   ├── products_time_lists.entity.ts
│   │   │   ├── relation_lists.entity.ts
│   │   │   ├── season_lists.entity.ts
│   │   │   └── time_lists.entity.ts
│   │   └── util.ts
│   ├── main.ts
│   ├── ratings
│   │   ├── dto
│   │   │   ├── productRating.request.dto.ts
│   │   │   └── serviceRating.request.dto.ts
│   │   ├── entities
│   │   │   ├── assessments.entity.ts
│   │   │   ├── questionnaire.entity.ts
│   │   │   ├── questionnaire_results.entity.ts
│   │   │   ├── questions.entity.ts
│   │   │   ├── ratings_entity.ts
│   │   │   └── ratings_products.entity.ts
│   │   ├── ratings.controller.spec.ts
│   │   ├── ratings.controller.ts
│   │   ├── ratings.module.ts
│   │   ├── ratings.repository.ts
│   │   ├── ratings.service.spec.ts
│   │   └── ratings.service.ts
│   ├── suggest
│   │   ├── dto
│   │   │   └── suggest.dto.ts
│   │   ├── suggest.controller.spec.ts
│   │   ├── suggest.controller.ts
│   │   ├── suggest.module.ts
│   │   ├── suggest.service.spec.ts
│   │   └── suggest.service.ts
│   └── users
│       ├── dto
│       │   └── users.request.dto.ts
│       ├── entities
│       │   └── users.entity.ts
│       ├── jwt.strategy.ts
│       ├── users.controller.spec.ts
│       ├── users.controller.ts
│       ├── users.module.ts
│       ├── users.repository.ts
│       ├── users.service.spec.ts
│       └── users.service.ts
├── tsconfig.build.json
└── tsconfig.json


CI/CD 구조



ERD

Project_Gift


기타