Coder Social home page Coder Social logo

seoko-server's Introduction

SEOKO-server

seoko-server's People

Contributors

seoko97 avatar

Watchers

 avatar

seoko-server's Issues

Skill 관련 테스트 및 비즈니스 로직 생성

💼 구현 개요

  • Skill 관련 테스트 및 비즈니스 로직 생성합니다.
  • 각 메서드에 대한 테스트를 먼저 작성하고 이후 비즈니스 로직을 정의합니다.

진행 계획 및 현황

  • Service
    • 테스트
    • 비즈니스
  • Controller
    • 테스트
    • 비즈니스

Series 관련 비즈니스 로직 및 테스트 코드 생성

💼 구현 개요

  • Series 관련 비즈니스 로직 및 테스트 코드를 생성합니다.
  • Repository -> Service -> Controller 의 플로우를 따릅니다.
  • Service와 Controller의 테스트 코드를 생성합니다.

진행 계획 및 현황

  • Service
    • 테스트
    • 비즈니스
  • Controller
    • 테스트
    • 비즈니스

Jest Testing 환경 구성

💼 구현 개요

  • 테스트 환경을 구성합니다.
  • MongoDB -Memory Server를 통해 데이터 읽기, 쓰기를 지원합니다.

진행 계획 및 현황

  • Jest
  • MongoDB Memory Server

Auth Module 테스트 코드 및 비즈니스 로직 생성

💼 구현 개요

  • 유저 로그인, 로그아웃, 토큰 발급 등 유저 인증에 관한 비즈니스 로직을 실행하는 Auth Router를 생성합니다.
  • Controller - Service - Repository - Model로 진행합니다.
  • 각 모듈마다 테스트 코드를 생성합니다.

진행 계획 및 현황

  • Controller
    • 테스트
    • 비즈니스 로직
  • Service
    • 테스트
    • 비즈니스 로직
  • Repository
    • 테스트
    • 비즈니스 로직

User 테스트 코드 및 비즈니스 로직 생성

💼 구현 개요

  • 유저 생성, 정보 반환 등 유저에 관련한 로직을 위한 User Router를 생성합니다.
  • Controller - Service - Repository - Model로 진행합니다.
  • 각 모듈마다 테스트 코드를 생성합니다.

진행 계획 및 현황

  • Controller
    • 테스트
    • 비즈니스 로직
  • Service
    • 테스트
    • 비즈니스 로직
  • Repository
    • 테스트
    • 비즈니스 로직

Post 관린 비즈니스 로직 및 테스트 코드 생성

💼 구현 개요

  • Post 관련 비즈니스 로직 및 테스트 코드를 생성합니다.
  • Repository -> Service -> Controller 의 플로우를 따릅니다.
  • Service와 Controller의 테스트 코드를 생성합니다.

진행 계획 및 현황

  • Service
    • 테스트
    • 비즈니스
  • Controller
    • 테스트
    • 비즈니스

repositpry 중복 코드 제거 및 상속을 통한 코드 정의

💼 구현 개요

  • 기존 repository에서 반복되는 로직 (create, update, delete, getOne, getById, getAll 등)을 미리 생성한 클래스를 상속받아 사용/확장할 수 있고록 변경합니다.
  • 각 로직의 확장성을 위해 filter, projection, options를 넘겨받을 수 있도록 변경합니다.

진행 계획 및 현황

  • Base Repository 생성
  • 중복 로직 제거 및 상속을 통한 메서드 확장

Image Module 생성

💼 구현 개요

  • Project, Post 등 이미지를 업로드하기 위한 API 및 비즈니스 로직을 생성합니다.
  • Multer, Sharp를 통해 이미지 업로드시 사이즈, 형식 변경을 통해 최적화를 진행합니다.

진행 계획 및 현황

  • Image Module
  • Multer, Sharp

Experience 관련 테스트 및 비즈니스 로직 생성

💼 구현 개요

  • Experience 관련 테스트 및 비즈니스 로직 생성합니다.
  • 각 메서드에 대한 테스트를 먼저 작성하고 이후 비즈니스 로직을 정의합니다.

진행 계획 및 현황

  • Service
    • 테스트
    • 비즈니스
  • Controller
    • 테스트
    • 비즈니스

LocalGuard 및 JwtAuthGuard 구현

💼 구현 개요

  • JWT 인증을 위해 AuthGuard를 생성합니다.
  • 각 인증 로직을 위해 전략을 생성합니다.
  • 로그인을 위한 LocalGuard를 생성합니다.

진행 계획 및 현황

  • JwtAuthGuard
  • JwtStrategy
  • LocalGuard

Transition Decorator 생성

💼 구현 개요

  • 저장된 문서를 변경하는 도중 에러 발생시 현재 변경사항이 DB에 적용되지 않게 하기 위해 Transition을 적용해야 합니다.
  • Mongoose Middleware와 Decorator를 통해 Transition을 제어, 실행합니다.

진행 계획 및 현황

  • 미들웨어를 통해 실행되는 함수에 session 주입
  • Transition Decorator를 생성하여 필요한 메서드에서 정의

`GraphQL` -> `REST API` 변경

💼 구현 개요

  • 기존 GrahpQL을 통해 구현한 HTTP 요청을을 REST API로 변경합니다.

진행 현황

업데이트 예정

Project 관련 테스트 및 비즈니스 로직 생성

💼 구현 개요

  • Project 테스트 및 비즈니스 로직을 생성합니다.
  • 각 메서드에 대한 테스트를 먼저 작성하고 이후 비즈니스 로직을 정의합니다.

진행 계획 및 현황

  • Service
    • 테스트
    • 비즈니스
  • Controller
    • 테스트
    • 비즈니스

Repository 패턴 적용

💼 구현 개요

  • 각 route마다 Repository 패턴을 적용합니다.
  • 관심사 분리를 통해 각 비지니스로직을 독립적으로 관리하는 것을 목표합니다.
  • 분리된 모듈에 따라 단위 테스팅을 진행합니다.
  • model에 직접 접근하는 로직을 Repository내부에서 관리합니다.

진행 현황

업데이트 예정

Post 관련 모듈 Schema 생성

💼 구현 개요

  • Post 관련 Module의 Schema를 정의합니다.
  • Post, Tag, Series Schema를 정의합니다.

진행 계획 및 현황

  • Post
  • Tag
  • Series

Tag 관련 비즈니스 로직 및 테스트 코드 생성

💼 구현 개요

  • Tag 관련 비즈니스 로직 및 테스트 코드를 생성합니다.
  • Repository -> Service -> Controller 의 플로우를 따릅니다.
  • Service와 Controller의 테스트 코드를 생성합니다.

진행 계획 및 현황

  • Service
    • 테스트
    • 비즈니스
  • Controller
    • 테스트
    • 비즈니스

게시글 접속시 좋아요 표기가 안되는 이슈

💼 문제 사항

  • 초기 블로그 접속시 SSR을 통해 해당 유저의 ip가 게시글을 좋아요했는지 확인합니다.
  • 하지만 현재 해당 기능이 동작하지 않아 게시글에 카운트에는 포함되지만 좋아요 표기는 되어 있지 않은 버그가 발생했습니다.

MongoDB 및 환경 변수 설정

💼 구현 개요

  • NestJs + MongoDB 초기 설정을 진행합니다.
  • index router를 /api로 설정합니다.
  • ConfigModule을 통해 .env에 정의된 환경변수를 주입합니다.

진행 계획 및 현황

  • MongooseModule 생성 및 적용
  • ConfigModule 생성 및 적용
  • BaseSchema 생성

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.