Skip to content

khcho0125/highlights-myself

Repository files navigation

Highlights myself ✏️

1. Develop Environment

  • Ktor
  • Kotlin
  • MySQL
  • Gradle Kotlin DSL

2. Install & Run

a. Git clone 또는 프로젝트를 다운받으세요.

git clone https://github.com/khcho0125/highlights_myself.git

b. Gradle을 빌드합니다.

$ ./gradlew build

c. 환경변수를 설정합니다.

  • template.env파일 양식에 맞춰 환경변수를 입력한 후, 실행 구성에서 환경 변수 파일로 지정합니다.

  • 실행 구성에서 환경 변수를 작성합니다.

자신의 데이터베이스 설정과 맞게 입력해야 합니다.

d. 실행 후 브라우저에 http://localhost:8080을 입력하여 Help People Get Smart Faster 문구를 확인합니다.

3. Entity Relation Diagram

ERD는 ERDCloud를 활용해 작성했습니다.

ERD

기본키 구성

  • tbl_user, tbl_highlight, tbl_collection의 PrimaryKey → Auto Increment
  • tbl_highlight_storage의 PrimaryKey → tbl_highlighttbl_collection의 복합키로 구성

연관 관계

  • tbl_user - tbl_highlight => OneToMany ( 1 to N )
  • tbl_user - tbl_collection => OneToMany ( 1 to N )
  • tbl_highlight - tbl_collection => tbl_highlight_storage를 통한 ManyToMany ( N to N )
  • tbl_collection - tbl_collection => OneToMany ( 1 to N ) self-relationship

✏️ 추가적인 DB Table 및 Index 정보는 tables_structure.sql 파일을 참고해주세요!

4. API Specification

명세 링크입니다.

Postman을 사용해 간단한 명세를 작성했습니다.

5. Trouble Shooting

마주친 문제는 Issues에 기록해두었습니다.