이 프로젝트는 2019 NAVER D2 FEST mini 썸머 챌린지에 출품하기 위한 프로젝트입니다. 여러 주제 중, 타임라인 주제를 선정하여 진행되었습니다.
- Frontend repo : https://github.com/siosio34/timeline-frontend
이 프로젝트는 Spring boot으로 만들어졌습니다.
Repository를 다운 받은 후, 해당 디렉토리에서 아래 명령어를 실행합니다.
$ gradle bootrun
or
$ gradlew bootrun
App이 http://localhost:8080
에서 실행됩니다.
$ gradle bootJar
or
$ gradlew bootJar
위 명령어를 실행하면 build/libs
폴더에 빌드 결과물이 저장됩니다.
이 프로젝트는 기본적인 기능을 담은 타임라인 서비스를 구현하였습니다.
- 회원가입, 로그인/로그아웃(jwt token)
- 새 소식(=이벤트) 작성, 삭제, 이미지 첨부
- 타임라인, 내 소식 목록
- 프로필 수정, 프로필 이미지 업로드
- 친구 목록, 추천 친구, 친구 요청 및 거절, 친구 삭제
- 추천 친구, 친구 목록 캐시 처리
- 게시물 페이징 처리
- 엔티티 인덱싱 처리
프로젝트에 사용된 오픈소스 라이브러리는 아래와 같습니다.
- spring boot
- jackson
- lombok
- spring security
- jjwt
- springfox
- aws-java-sdk-s3
- spring data redis
- lettuce
- mysql
- nginx
- ubuntu server
- redis
MIT License