Skip to content

πŸ“˜ Flip Card둜 효과적으둜 ν•™μŠ΅ν•˜λŠ” κΈ°μˆ λ©΄μ ‘ ν•Έλ“œλΆ

Notifications You must be signed in to change notification settings

prgrms-fe-devcourse/NFE1-1-3-techLog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“˜ Flip Card둜 효과적으둜 ν•™μŠ΅ν•˜λŠ” κΈ°μˆ λ©΄μ ‘ ν•Έλ“œλΆ

ν”Œλ¦½ μΉ΄λ“œλ₯Ό μ‚¬μš©ν•΄ CS κ°œλ…μ„ μ •λ¦¬ν•˜μ—¬ 곡뢀할 수 μžˆλŠ” κΈ°μˆ λ©΄μ ‘ ν•Έλ“œλΆμž…λ‹ˆλ‹€.

배포 URL: https://nfe-1-1-3-tech-log.vercel.app/

πŸŽ‡ν”„λ‘œμ νŠΈ κ°œμš”

TechLogλŠ” CS κ°œλ…μ„ μΉ΄ν…Œκ³ λ¦¬λ³„λ‘œ μ •λ¦¬ν•˜κ³ , μ—¬λŸ¬ μ‚¬μš©μžλ“€κ³Όμ˜ μ±„νŒ…μ„ 톡해 μ˜€κ°œλ…μ΄λ‚˜ λΆ€μ‘±ν•œ κ°œλ…μ„ λ³΄μΆ©ν•˜λ©° 기술 면접을 μ€€λΉ„ν•  수 μžˆλŠ” μ›Ήμ‚¬μ΄νŠΈμž…λ‹ˆλ‹€.

주둜 μ·¨μ—… 쀀비생, 이직을 κ³ λ €ν•˜λŠ” 개발자, λ©΄μ ‘κ΄€(Interviewer)이 μ‚¬μš©ν•  κ²ƒμœΌλ‘œ κΈ°λŒ€λ©λ‹ˆλ‹€.

μ‚¬μš©μžλŠ” μžμ‹ μ΄ λ“±λ‘ν•œ 질문과 닡변을 직접 μΆ”κ°€ν•  수 있으며, λ‹€λ₯Έ μ‚¬μš©μžλ“€μ΄ ν”Œλ¦½ μΉ΄λ“œ ν˜•μ‹μœΌλ‘œ λ“±λ‘ν•œ 질문과 닡변을 톡해 기술 λ©΄μ ‘μ—μ„œ 자주 λ‚˜μ˜€λŠ” 질문과 κΌ­ μ•Œμ•„μ•Ό ν•  κ°œλ…μ„ μΉ΄λ“œ 뿐만 μ•„λ‹ˆλΌ, μ‹€μ‹œκ°„ μ±„νŒ…μ„ 톡해 κ³΅μœ ν•˜κ³  λŒ€λΉ„ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

πŸ“ƒλͺ©μ°¨

πŸ‘©πŸ»β€πŸ’»ν”„λ‘œμ νŠΈ ꡬ성원

Backend Backend Backend Frontend Frontend
κΉ€μ£Όμ˜ μ΅œνš¨μ’… ν™μœ μ§„ μ΄μ£Όν™˜ ν•¨λ―Όν˜

@juyoung

@hyujong

@yujin

@juhwan

@minhynk

πŸ’‘μ£Όμš” κΈ°λŠ₯

βœ”οΈμ§ˆλ¬Έ 및 λ‹΅λ³€ 곡유

  • μ‚¬μš©μžκ°€ 읡λͺ…μœΌλ‘œ 기술 λ©΄μ ‘ μ§ˆλ¬Έμ„ λ“±λ‘ν•˜κ³ , λ‹€λ₯Έ μ‚¬μš©μžμ˜ 닡변을 톡해 λ©΄μ ‘ 쀀비에 도움을 받을 수 μžˆμŠ΅λ‹ˆλ‹€.
  • 질문 λͺ©λ‘μ€ main νŽ˜μ΄μ§€μ—μ„œ Grid ν˜•μ‹μœΌλ‘œ 제곡되며, μΉ΄λ“œλ₯Ό 클릭 μ‹œ μΉ΄λ“œ 뒀집기 μ• λ‹ˆλ©”μ΄μ…˜μ„ 톡해 닡변이 ν‘œμ‹œλ©λ‹ˆλ‹€.

βœ”οΈμ§ˆλ¬Έ, λ‹΅λ³€ 등둝 κΈ°λŠ₯

  • μ‚¬μš©μžλ“€μ΄ μžμ‹ μ˜ 질문/닡변을 μ‰½κ²Œ 등둝할 수 μžˆλ„λ‘ κ°„λ‹¨ν•œ 등둝 λͺ¨λ‹¬μ„ μ œκ³΅ν•˜κ³  있으며, 질문과 λ‹΅λ³€ λͺ¨λ‘ μž‘μ„± ν›„ ν•œ λ²ˆμ— λ“±λ‘ν•©λ‹ˆλ‹€.

βœ”οΈμΉ΄λ“œ flip 효과λ₯Ό ν†΅ν•œ 직관적인 λ‹΅λ³€ 확인

  • μ‚¬μš©μžκ°€ μ§ˆλ¬Έμ„ ν΄λ¦­ν•˜λ©΄ μΉ΄λ“œκ°€ λ’€μ§‘νžˆλ©΄μ„œ 닡변이 λ‚˜νƒ€λ‚˜λŠ” μ‹œκ°μ μΈ 효과λ₯Ό 톡해 ν•™μŠ΅ 효과λ₯Ό 높일 수 μžˆμŠ΅λ‹ˆλ‹€.

βœ”οΈμ§ˆλ¬Έ λ‹΅λ³€ 및 상세 보기

  • 닡변을 확인 ν›„, 더 μžμ„Έν•œ 정보λ₯Ό 원할 경우 "상세보기" λ²„νŠΌμ„ ν΄λ¦­ν•˜μ—¬ ν•΄λ‹Ή μ§ˆλ¬Έμ— λŒ€ν•œ 상세 닡변을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

βœ”οΈλ‹€λ₯Έ μ‚¬μš©μžλ“€κ³Ό μ‹€μ‹œκ°„ μ±„νŒ…

  • 각 μΉ΄λ“œμ˜ 상세 νŽ˜μ΄μ§€μ—μ„œ μ‹€μ‹œκ°„μœΌλ‘œ μ—¬λŸ¬ μ‚¬μš©μžλ“€κ³Ό μ±„νŒ…μ„ 톡해 μ†Œν†΅ν•˜λ©° 정보λ₯Ό κ³΅μœ ν•˜κ³  얻을 수 μžˆμŠ΅λ‹ˆλ‹€.

βœ”οΈλ§ˆμ΄νŽ˜μ΄μ§€ κΈ°λŠ₯

  • νšŒμ›κ°€μž…, λ‘œκ·ΈμΈμ„ 톡해 글을 μ“°κ±°λ‚˜/μ‚­μ œ/μˆ˜μ • κΈ°λŠ₯을 μ΄μš©ν•  수 있으며, λ§ˆμ΄νŽ˜μ΄μ§€λ₯Ό 톡해 μžμ‹ μ΄ μ“΄ μΉ΄λ“œ 리슀트λ₯Ό 관리할 수 μžˆμŠ΅λ‹ˆλ‹€.

πŸ› κΈ°μˆ  μŠ€νƒ

πŸ“ŒFrond-end

πŸ“ŒBack-end

πŸ“Œλ²„μ „ 관리 및 ν˜‘μ—… 도ꡬ


πŸ“ν΄λ” ꡬ쑰

μ΅œμƒμœ„ ꡬ쑰

  NFE1-1-3-techLog/
  β”œβ”€β”€.github
  β”œβ”€β”€BackEnd
  β”œβ”€β”€frontend
  β”œβ”€β”€.gitignore
  β”œβ”€β”€.prettierrc
  β”œβ”€β”€.package-lock.json
  β”œβ”€β”€.package.json
  └──README.md
  
ν”„λ‘ νŠΈμ—”λ“œ 디렉토리 ꡬ쑰

src/
β”‚
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ common/
β”‚   β”‚   β”œβ”€β”€ Button.js
β”‚   β”‚   β”œβ”€β”€ Input.js
β”‚   β”‚   └── ...
β”‚   β”‚
β”‚   β”œβ”€β”€ layout/
β”‚   β”‚   β”œβ”€β”€ Header.js
β”‚   β”‚   β”œβ”€β”€ Footer.js
β”‚   β”‚   └── ...
β”‚   β”‚
β”‚   └── feature/
β”‚       β”œβ”€β”€ UserProfile.js
β”‚       β”œβ”€β”€ ProductList.js
β”‚       └── ...
β”‚
β”œβ”€β”€ pages/
β”‚   β”œβ”€β”€ Home.js
β”‚   β”œβ”€β”€ About.js
β”‚   β”œβ”€β”€ Contact.js
β”‚   └── ...
β”‚
β”œβ”€β”€ hooks/
β”‚   β”œβ”€β”€ useForm.js
β”‚   β”œβ”€β”€ useAPI.js
β”‚   └── ...
β”‚
β”‚
β”œβ”€β”€ api/
β”‚   β”œβ”€β”€ auth.js
β”‚   └── ...
β”‚
β”‚
β”œβ”€β”€ styles/
β”‚   β”œβ”€β”€ global.css
β”‚   β”œβ”€β”€ variables.css
β”‚   └── ...
β”‚
β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ images/
β”‚   β”œβ”€β”€ fonts/
β”‚   └── ...
β”‚
└── App.js
λ°±μ—”λ“œ 디렉토리 ꡬ쑰

root/
β”‚
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ controllers/
β”‚   β”‚   └── users                 # μ‚¬μš©μž κ΄€λ ¨ 둜직 처리
β”‚   β”‚   └── post                  # κ²Œμ‹œλ¬Ό κ΄€λ ¨ 둜직 처리
β”‚   β”‚   └── comment               # μ‹€μ‹œκ°„ μ±„νŒ… κ΄€λ ¨ 둜직 처리
β”‚   β”œβ”€β”€ middlewares/
β”‚   β”‚   └── auth.js               # μ‚¬μš©μž κ΄€λ ¨ 인증 처리 미듀웨어
β”‚   β”œβ”€β”€ models/
β”‚   β”‚   └── comment.js            # μ±„νŒ…μ— λŒ€ν•œ Mongoose μŠ€ν‚€λ§ˆ
β”‚   β”‚   └── User.js               # μ‚¬μš©μžμ— λŒ€ν•œ Mongoose μŠ€ν‚€λ§ˆ
β”‚   β”‚   └── Post.js               # κ²Œμ‹œλ¬Όμ— λŒ€ν•œ Mongoose μŠ€ν‚€λ§ˆ
β”‚   β”œβ”€β”€ routes/
β”‚   β”‚   └── commentRoutes.js      # λŒ“κΈ€ κ΄€λ ¨ λΌμš°ν„°
β”‚   β”‚   └── userRoutes.js         # νšŒμ› κ΄€λ ¨ λΌμš°ν„°
β”‚   β”‚   └── postRoutes.js         # κ²Œμ‹œλ¬Ό κ΄€λ ¨ λΌμš°ν„°
β”‚   β”œβ”€β”€ websocket/
β”‚   β”‚   └── websocketServer.js    # socket.io μ±„νŒ… ν•Έλ“€λŸ¬
β”‚   β”œβ”€β”€ app.js                    # Express μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„€μ •
β”‚   β”œβ”€β”€ server.js                 # μ„œλ²„ μ§„μž…μ 
β”‚   └── .env                      # ν™˜κ²½ λ³€μˆ˜ (예: DB μ—°κ²° λ¬Έμžμ—΄)
β”‚
└── frontend/                     # ν”„λ‘ νŠΈμ—”λ“œ 디렉토리 (λ¦¬μ•‘νŠΈ)
  

πŸ”„ User Flow

μ£Όμš” μ‚¬μš©μž 흐름

  1. λΉ„λ‘œκ·ΈμΈ μ‚¬μš©μž: μΉ΄λ“œ μ—΄λžŒ 및 νšŒμ›κ°€μž… κ°€λŠ₯
  2. 둜그인 μ‚¬μš©μž: μΉ΄λ“œ μž‘μ„±/μˆ˜μ •/μ‚­μ œ, μ‹€μ‹œκ°„ μ±„νŒ… μ°Έμ—¬, λ§ˆμ΄νŽ˜μ΄μ§€ 이용 κ°€λŠ₯
  3. λ§ˆμ΄νŽ˜μ΄μ§€: μžμ‹ μ΄ μž‘μ„±ν•œ μΉ΄λ“œ 관리 κ°€λŠ₯

πŸ“Š Database Schema

Collection

  1. user
    • μ‚¬μš©μž 정보 관리
    • μ‚¬μš©μž id(username), λΉ„λ°€λ²ˆν˜Έ(password) μ €μž₯
  2. post
    • 질문과 λ‹΅λ³€ 정보 관리
    • 제λͺ©(title), μΉ΄ν…Œκ³ λ¦¬(category), 짧은 λ‹΅λ³€(shortAnswer), κΈ΄ λ‹΅λ³€(detailedAnswer), μž‘μ„±μž id(user μŠ€ν‚€λ§ˆμ˜ objectId), μž‘μ„± μ‹œκ°„(createdAt), μˆ˜μ •μ‹œκ°„(updatedAt) μ €μž₯
  3. comment
    • μ‹€μ‹œκ°„ μ±„νŒ… 메세지 μ €μž₯
    • μž‘μ„±μžid(userId), κΈ€id(postId), λŒ“κΈ€λ‚΄μš©(content), λŒ“κΈ€ μ—…λ‘œλ“œ μ‹œκ°„(createdAt) μ €μž₯

πŸš€μ„€μΉ˜ 및 μ‹€ν–‰ 방법

μ„€μΉ˜

  1. μ €μž₯μ†Œ λ³΅μ œν•˜κΈ°
git clone https://github.com/prgrms-fe-devcourse/NFE1-1-3-techLog.git
  1. ν”„λ‘ νŠΈμ—”λ“œ, λ°±μ—”λ“œ, 그리고 루트 디렉토리에 λŒ€ν•œ 쒅속성 μ„€μΉ˜
// 루트 디렉토리
npm install

// ν”„λ‘ νŠΈμ—”λ“œ 디렉토리
cd frontend
npm install

// λ°±μ—”λ“œ 디렉토리
cd Backend
npm install
  1. ν™˜κ²½ λ³€μˆ˜ μ„€μ •
  • frontend, Backend 상단 디렉토리에 .env 파일 생성
  • Backend: mongoDB μ£Όμ†Œ, secretKey
  • frontend: λ°±μ—”λ“œ 도메인 μ£Όμ†Œ
  1. 개발 μ„œλ²„ μ‹œμž‘
// ν”„λ‘ νŠΈμ—”λ“œ 디렉토리
npm run start

// λ°±μ—”λ“œ 디렉토리
nodemon server.js or node server.js or npm run server

πŸ“†κ°œλ°œ κΈ°κ°„

  • 기획: 2024.10.17~2024.10.24
  • 개발: 2024.10.25~2024.11.6

πŸ› νŠΈλŸ¬λΈ” μŠˆνŒ…

wikiμ—μ„œ μ°Έκ³ 


πŸ”§ν–₯ν›„ κ°œμ„  사항

  • μΉ΄ν…Œκ³ λ¦¬ μΆ”κ°€
  • μ˜ˆμ™Έ 처리 보강
  • 슀크랩 κΈ°λŠ₯ μΆ”κ°€ -> λ‹€λ₯Έ μ‚¬μš©μžλ“€μ˜ 질문 관리

πŸ‘₯νŒ€μ› μ†Œκ°œ 및 λŠλ‚€μ 

μ΄μ£Όν™˜ (ν”„λ‘ νŠΈμ—”λ“œ)
  • μž‘μ„± μ˜ˆμ •
ν•¨λ―Όν˜ (ν”„λ‘ νŠΈμ—”λ“œ)
  • μž‘μ„± μ˜ˆμ •
κΉ€μ£Όμ˜A (λ°±μ—”λ“œ)
  • μž‘μ„± μ˜ˆμ •
μ΅œνš¨μ’… (λ°±μ—”λ“œ)
  • μž‘μ„± μ˜ˆμ •
ν™μœ μ§„ (λ°±μ—”λ“œ)
  • μž‘μ„± μ˜ˆμ •

About

πŸ“˜ Flip Card둜 효과적으둜 ν•™μŠ΅ν•˜λŠ” κΈ°μˆ λ©΄μ ‘ ν•Έλ“œλΆ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published