미디어에 나온 유명 장소들을 공유할 수 있는 블로그 플랫폼입니다.
백엔드 개발자 5명과 프론트엔드 개발자 1명이 약 4주간 진행했으며, 최우수 프로젝트에 선정되었습니다.
팀원 | 역할 |
---|---|
김누리 | 인프라 구축, 인증 및 인가 |
류대현 | 게시글 및 팔로우, 조회 수 처리 |
이교원 | 관리자 및 신고, ELK 로그 처리, ELK CI/CD, 인기 검색어/게시글 추출 |
한상훈 | 좋아요 기능, 임시 글 및 이미지 처리 |
황윤구 | 댓글 기능, 검색 및 검색어 자동 완성 |
- 전체 블로그 및 게시글 확인
- 위치 정보 및 해시태그를 추가해 게시글 작성
- 실시간 인기 글 및 검색어 조회
- '좋아요'한 포스트 모아보기
- 다른 사용자의 블로그 팔로우
- 게시글 댓글 작성
- 관리자 및 신고
- ELK 로그 처리
카테고리 | 기술 |
---|---|
프로그래밍 언어 | Java 17 |
프레임워크 | Spring Boot |
데이터베이스 | MySQL, Redis |
API 설계 | RESTful API |
인증 & 보안 | JWT, OAuth2.0 |
배포 환경 | AWS(EC2, S3), NGINX, Docker, Terraform |
로그 | ElasticSearch, Logstash, Kinaba, Beats |
CI/CD | GitHub Actions |
테스트 | JUnit 5 |
문서화 | Springdoc, Swagger UI |
[Wiki]를 참고해주세요!
📦 src
├── 📂 main
│ ├── 📂 java/com/ndgl/spotfinder
│ │ ├── 📂 domain
│ │ │ ├── 📂 admin
│ │ │ ├── 📂 auth
│ │ │ ├── 📂 blog
│ │ │ ├── 📂 comment
│ │ │ ├── 📂 follow
│ │ │ ├── 📂 image
│ │ │ ├── 📂 like
│ │ │ ├── 📂 popular
│ │ │ ├── 📂 post
│ │ │ ├── 📂 report
│ │ │ ├── 📂 search
│ │ │ └── 📂 user
│ │ │
│ │ ├── 📂 global
│ │ │ ├── 📂 aspect
│ │ │ │ └── 📂 logging
│ │ │ ├── 📂 aws
│ │ │ │ └── 📂 s3
│ │ │ ├── 📂 base
│ │ │ ├── 📂 cache
│ │ │ │ └── 📂 redis
│ │ │ ├── 📂 common
│ │ │ │ └── 📂 util
│ │ │ ├── 📂 config
│ │ │ │ ├── 📂 elastic
│ │ │ │ └── 📂 redis
│ │ │ ├── 📂 exception
│ │ │ ├── 📂 initdata
│ │ │ ├── 📂 rsdata
│ │ │ └── 📂 security
│ │ │ ├── 📂 cookie
│ │ │ ├── 📂 jwt
│ │ │ └── 📂 refresh
│ │ │
│ │ └── 📄 SpotfinderApplication.java
│ │
│ └── 📂 resources
│ ├── 📂 logs
│ ├── 📄 application.yml
│ ├── 📄 console-appender.xml
│ └── 📄 logback-spring.xml
│
├── 📂 test
│ └── 📂 java/com/ndgl/spotfinder
│
└── 📂 .github
└── 📂 workflows
프론트엔드 코드는 링크를 참고해주세요! [FE 링크]