Skip to content

당근마켓 javaspring 클론코딩 / 참고 : spring-toy-project-2023/karrot-market(java/spring), aliencube/azure-openai-sdk-proxy(C#/asp.net)

Notifications You must be signed in to change notification settings

tae0y/clonecoding-javaspring

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README

Getting Started

  • build/run, swagger openAPI : http://localhost:8080/swagger-ui로 접속 (port, swagger endpoint는 application.yml 확인)
# 빌드, 앱 실행
mvn spring-boot:run -Dspring-boot.run.profiles=local
  • lint, unit test
# spectral lint
mvn spring-boot:run -Dspring-boot.run.profiles=local > /dev/null 2>&1 &
APP_PID=$!
sleep 5
rm -f swagger.json
curl http://localhost:8080/v3/api-docs -o swagger.json
spectral lint swagger.json #spectral lint -f json -F warn -D -q swagger.json | ConvertFrom-Json
kill $APP_PID
rm -f swagger.json

# 단위테스트
mvn test

Git Convention

  • main : 운영배포라 생각하고 병합
  • pull request : 등록된 이슈 제목으로 등록
  • merge : 스쿼시 머지
  • branch name : 등록된 이슈번호/제목 사용
  • commit message : create, update, delete prefix를 달고 그외 자유

Goals

Short-Term

  • 사용자관점
    • 사용자는 상품을 등록, 조회, 수정, 삭제할 수 있다.
    • 사용자는 상품을 다른 사용자와 거래할 수 있다.
    • 사용자는 지정된 위치정보를 기준으로 상품을 조회할 수 있다.
  • 운영관점
    • 프로필별로 인메모리H2, 도커PostgreSQL에 연결할 수 있다
    • 단위테스트시에는 테스트용 일회용 도커컨테이너를 사용할 수 있다
    • OpenAPI를 사용해 API를 사전 설계한다.

Long-Term

  • 모노레포로 MSA를 동시에 빌드/운영 (가능하다면 aspire 적용)
  • RabbitMQ, Kafka, ProtoBuf 등 사용한 인터페이스 로직
  • 알림 발송을 위한 배치서비스

About

당근마켓 javaspring 클론코딩 / 참고 : spring-toy-project-2023/karrot-market(java/spring), aliencube/azure-openai-sdk-proxy(C#/asp.net)

Resources

Stars

Watchers

Forks

Languages

  • Java 85.6%
  • PLpgSQL 14.4%