Skip to content

Latest commit

Β 

History

History
121 lines (102 loc) Β· 4.05 KB

File metadata and controls

121 lines (102 loc) Β· 4.05 KB

Project Name

WhyNotBuyThis

Table of Contents

πŸ“ Overview
πŸ“ Project Structure
πŸš€ Getting Started
πŸ’‘ Motivation
🎬 Demo
🌐 Deployment
🀝 Contributing
❓ Troubleshooting & FAQ
πŸ“ˆ Performance

πŸ“ Overview

이 ν”„λ‘œμ νŠΈλŠ” μ‚¬μš©μž 인증 및 μƒν’ˆ μΆ”μ²œ μ‹œμŠ€ν…œμ„ ν¬ν•¨ν•œ λ°±μ—”λ“œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μž…λ‹ˆλ‹€.

  • μ£Ό λͺ©μ μ€ μ‚¬μš©μžμ—κ²Œ λ§žμΆ€ν˜• μƒν’ˆ μΆ”μ²œ μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

Main Purpose

  • μ‚¬μš©μž 인증 및 μƒν’ˆ μΆ”μ²œ κΈ°λŠ₯을 μ œκ³΅ν•˜μ—¬ μ‚¬μš©μž κ²½ν—˜μ„ ν–₯μƒμ‹œν‚€λŠ” 것이 μ£Ό λͺ©ν‘œμž…λ‹ˆλ‹€.
  • μ‚¬μš©μžκ°€ μ›ν•˜λŠ” μƒν’ˆμ„ μ‰½κ²Œ 찾을 수 μžˆλ„λ‘ λ•μŠ΅λ‹ˆλ‹€.
  • μ£Ό λŒ€μƒμ€ μƒν’ˆμ„ κ΅¬λ§€ν•˜κ³ μž ν•˜λŠ” 일반 μ‚¬μš©μžμž…λ‹ˆλ‹€.

Key Features

  • μ‚¬μš©μž νšŒμ›κ°€μž… 및 둜그인 κΈ°λŠ₯
  • OAuth2λ₯Ό ν†΅ν•œ μ†Œμ…œ 둜그인 지원
  • μƒν’ˆ 필터링 및 μΆ”μ²œ κΈ°λŠ₯
  • κ²Œμ‹œνŒ κΈ°λŠ₯을 ν†΅ν•œ μ‚¬μš©μž κ°„μ˜ μ†Œν†΅

Core Technology Stack

  • Frontend: [React]
  • Backend: [Spring Boot]
  • Database: [MySQL]
  • Others: [JWT, Redis]

πŸ“ Project Structure

[Nano2998 Backend] β”œβ”€β”€ πŸ“ domain β”‚ β”œβ”€β”€ πŸ“ board β”‚ β”‚ β”œβ”€β”€ BoardController.java β”‚ β”‚ β”œβ”€β”€ BoardEntity.java β”‚ β”‚ └── ... β”‚ β”œβ”€β”€ πŸ“ item β”‚ β”‚ β”œβ”€β”€ ItemController.java β”‚ β”‚ β”œβ”€β”€ ItemEntity.java β”‚ β”‚ └── ... β”‚ β”œβ”€β”€ πŸ“ user β”‚ β”‚ β”œβ”€β”€ UserController.java β”‚ β”‚ β”œβ”€β”€ UserEntity.java β”‚ β”‚ └── ... β”‚ └── ... β”œβ”€β”€ πŸ“ global β”‚ β”œβ”€β”€ BaseEntity.java β”‚ └── GlobalExceptionHandler.java └── ...

πŸš€ Getting Started

Prerequisites

  • 지원 운영 체제
    • Windows, macOS, Linux
  • ν•„μˆ˜ μ†Œν”„νŠΈμ›¨μ–΄
    • λŸ°νƒ€μž„ ν™˜κ²½: Java
    • 버전 μš”κ΅¬ 사항: Java 17
    • νŒ¨ν‚€μ§€ κ΄€λ¦¬μž: Gradle
  • μ‹œμŠ€ν…œ 쒅속성
    • μ‹œμŠ€ν…œ μˆ˜μ€€ λΌμ΄λΈŒλŸ¬λ¦¬λ‚˜ λ„κ΅¬λŠ” λ³„λ„λ‘œ ν•„μš”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

Installation

  • Dockerfile이 μžˆλŠ” 경우, 이λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • λͺ¨λ“  μ„€μΉ˜ 방법은 Dockerfile에 ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
# λ ˆν¬μ§€ν† λ¦¬ 클둠
git clone https://github.com/Nano2998/Backend/.git
cd buy

# ν•„μš”ν•œ νŒ¨ν‚€μ§€ μ„€μΉ˜
./gradlew build

# ν™˜κ²½ μ„€μ •
# ν™˜κ²½ 섀정이 ν•„μš”ν•œ 경우, μΆ”κ°€ λͺ…λ Ήμ–΄λ₯Ό 여기에 μž…λ ₯ν•˜μ„Έμš”.

Usage

# μ‹€ν–‰ 방법
./gradlew bootRun

## πŸ’‘ Motivation
- 이 ν”„λ‘œμ νŠΈλŠ” μ‚¬μš©μžμ—κ²Œ λ§žμΆ€ν˜• μƒν’ˆμ„ μΆ”μ²œν•˜κ³ , μ†Œν†΅ν•  수 μžˆλŠ” ν”Œλž«νΌμ„ μ œκ³΅ν•˜κΈ° μœ„ν•΄ μ‹œμž‘λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
- μ‚¬μš©μž κ²½ν—˜μ„ κ°œμ„ ν•˜κ³ , μƒν’ˆ ꡬ맀λ₯Ό μ‰½κ²Œ ν•  수 μžˆλ„λ‘ 돕기 μœ„ν•΄ κ°œλ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

## 🎬 Demo
![Demo Video or Screenshot](path/to/demo.mp4)

## 🌐 Deployment
- AWS, Heroku와 같은 ν΄λΌμš°λ“œ ν”Œλž«νΌμ— 배포할 수 μžˆμŠ΅λ‹ˆλ‹€.
- 배포 λ‹¨κ³„λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€:
  1. μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λΉŒλ“œ
  2. ν΄λΌμš°λ“œ μ„œλΉ„μŠ€μ— 배포
  3. ν™˜κ²½ λ³€μˆ˜ μ„€μ •

## 🀝 Contributing
- κΈ°μ—¬ 방법: 이슈λ₯Ό μƒμ„±ν•˜κ±°λ‚˜ Pull Requestλ₯Ό 톡해 κΈ°μ—¬ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
- μ½”λ”© ν‘œμ€€: Java μ½”λ“œ μŠ€νƒ€μΌμ„ λ”°λ¦…λ‹ˆλ‹€.
- Pull Request κ³Όμ •: λ³€κ²½ 사항을 μ„€λͺ…ν•˜λŠ” λ©”μ‹œμ§€λ₯Ό ν¬ν•¨ν•˜μ—¬ μ œμΆœν•©λ‹ˆλ‹€.
- 행동 κ°•λ Ή: λͺ¨λ“  κΈ°μ—¬μžλŠ” 쑴쀑과 λ°°λ €λ₯Ό λ°”νƒ•μœΌλ‘œ 행동해야 ν•©λ‹ˆλ‹€.

## ❓ Troubleshooting & FAQ
- **Q: μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ μ‹œμž‘λ˜μ§€ μ•Šμ•„μš”.**  
  A: λ°μ΄ν„°λ² μ΄μŠ€ μ—°κ²° 섀정을 ν™•μΈν•˜μ„Έμš”.
- **Q: 둜그인 μ‹œ 였λ₯˜κ°€ λ°œμƒν•΄μš”.**  
  A: μž…λ ₯ν•œ 이메일과 λΉ„λ°€λ²ˆν˜Έλ₯Ό ν™•μΈν•˜μ„Έμš”.

## πŸ“ˆ Performance
- μ„±λŠ₯ 벀치마크: μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 응닡 μ‹œκ°„ 및 μ²˜λ¦¬λŸ‰μ„ μΈ‘μ •ν•©λ‹ˆλ‹€.
- μ΅œμ ν™” 기법: 쿼리 μ΅œμ ν™” 및 캐싱을 μ‚¬μš©ν•˜μ—¬ μ„±λŠ₯을 κ°œμ„ ν•©λ‹ˆλ‹€.
- ν™•μž₯μ„± 고렀사항: μˆ˜ν‰μ  ν™•μž₯을 톡해 μ‚¬μš©μž 수 증가에 λŒ€μ‘ν•©λ‹ˆλ‹€.