Skip to content

πŸ“š 개인 λ„μ„œ 관리 μ‹œμŠ€ν…œ - νšŒμ‚¬ λ²•μΈμΉ΄λ“œ 쀑볡ꡬ맀 λ°©μ§€μš© Book Tracker with Railway deployment support

Notifications You must be signed in to change notification settings

dataofmen/book-tracker

Repository files navigation

Book Tracker

νšŒμ‚¬ 법인 μΉ΄λ“œλ‘œ 책을 쀑볡 κ΅¬λ§€ν•˜μ§€ μ•Šλ„λ‘ λ„μ™€μ£ΌλŠ” 개인 λ„μ„œ 관리 μ‹œμŠ€ν…œμž…λ‹ˆλ‹€.

✨ μƒˆλ‘œμš΄ κΈ°λŠ₯: 슀마트 API 선택

🧠 언어별 μ΅œμ ν™”λœ 검색

  • ν•œκ΅­μ–΄ 제λͺ© β†’ 넀이버 Books API μ‚¬μš©
  • μ˜μ–΄ 제λͺ© β†’ Google Books API μ‚¬μš©
  • μžλ™ μ–Έμ–΄ 감지: κ²€μƒ‰μ–΄μ˜ ν•œκΈ€/μ˜λ¬Έμ„ μžλ™ νŒλ³„
  • Fallback μ‹œμŠ€ν…œ: μ£Ό API μ‹€νŒ¨μ‹œ μžλ™μœΌλ‘œ 보쑰 API μ‹œλ„

μ£Όμš” κΈ°λŠ₯

πŸ“š 슀마트 μ„œμ§€ 정보 μˆ˜μ§‘

  • 언어별 μ΅œμ ν™”λœ API μ‚¬μš©: ν•œκ΅­μ–΄ 제λͺ©μ€ 넀이버 Books API, μ˜μ–΄ 제λͺ©μ€ Google Books API
  • μžλ™ μ–Έμ–΄ 감지: κ²€μƒ‰μ–΄μ˜ μ–Έμ–΄λ₯Ό μžλ™μœΌλ‘œ νŒλ³„ν•˜μ—¬ 졜적의 API 선택
  • Fallback μ‹œμŠ€ν…œ: μ£Ό APIμ—μ„œ κ²°κ³Όκ°€ μ—†μœΌλ©΄ μžλ™μœΌλ‘œ 보쑰 API μ‹œλ„
  • 제λͺ©, μ €μž, μΆœνŒμ‚¬, μΆœκ°„μΌ, ISBN, μ±… ν‘œμ§€, μ†Œκ°œκΈ€ λ“± μžλ™ μˆ˜μ§‘

🚨 쀑볡 ꡬ맀 λ°©μ§€

  • 이미 λ³΄μœ ν•œ 책인지 μžλ™μœΌλ‘œ 검사
  • ISBN 및 제λͺ© 기반 쀑볡 검사
  • 쀑볡 κ°€λŠ₯성이 μžˆμ„ λ•Œ κ²½κ³  λ©”μ‹œμ§€ ν‘œμ‹œ

πŸ’° ꡬ맀 이λ ₯ 관리

  • ꡬ맀 λ‚ μ§œ, 가격 정보 μ €μž₯
  • 총 ꡬ맀 κΈˆμ•‘ 톡계 제곡
  • 개인 λ©”λͺ¨ 및 ν›„κΈ° μ €μž₯ κ°€λŠ₯

πŸ” 검색 및 필터링

  • 제λͺ©, μ €μžλͺ…μœΌλ‘œ λΉ λ₯Έ 검색
  • 가격 정보 유무, λ©”λͺ¨ 유무, ꡬ맀 μ‹œκΈ°λ³„ 필터링
  • λ‹€μ–‘ν•œ μ •λ ¬ μ˜΅μ…˜ (μ΅œμ‹ μˆœ, 제λͺ©μˆœ, μ €μžμˆœ)

μ„€μΉ˜ 및 μ‹€ν–‰

1. μ˜μ‘΄μ„± μ„€μΉ˜

cd book-tracker
pip install -r requirements.txt

2. 넀이버 API μ„€μ • (선택사항)

ν•œκ΅­μ–΄ λ„μ„œ 검색 ν’ˆμ§ˆ ν–₯상을 μœ„ν•΄ 넀이버 API ν‚€λ₯Ό μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

# ν™˜κ²½ μ„€μ • 파일 볡사
cp .env.example .env

# .env νŒŒμΌμ„ μ—΄κ³  넀이버 API ν‚€ μž…λ ₯
# NAVER_CLIENT_ID=your_client_id
# NAVER_CLIENT_SECRET=your_client_secret

πŸ“‹ 넀이버 API ν‚€ λ°œκΈ‰ 방법: NAVER_API_SETUP.md μ°Έκ³ 

3. μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ‹€ν–‰

python app.py

4. μ›Ή λΈŒλΌμš°μ €μ—μ„œ 접속

http://localhost:8080

μ‚¬μš©λ²•

πŸ“– μ±… λ“±λ‘ν•˜κΈ°

  1. ν™ˆνŽ˜μ΄μ§€μ—μ„œ μ±… 제λͺ© μž…λ ₯ (ν•œκ΅­μ–΄/μ˜μ–΄ μžλ™ 감지)
  2. μ‚¬μš©λœ API 정보 확인 (νŒŒλž€μƒ‰ 정보 λ°•μŠ€)
  3. 검색 κ²°κ³Όμ—μ„œ ν•΄λ‹Ή μ±… 선택
  4. ꡬ맀 가격과 λ©”λͺ¨ μž…λ ₯ (선택사항)
  5. "μ±… μΆ”κ°€" λ²„νŠΌ 클릭

πŸ“‹ μ±… λͺ©λ‘ ν™•μΈν•˜κΈ°

  1. 상단 λ©”λ‰΄μ—μ„œ "μ±… λͺ©λ‘" 클릭
  2. 검색, ν•„ν„°, μ •λ ¬ κΈ°λŠ₯ ν™œμš©
  3. "상세보기"둜 μ±… 정보 확인

πŸ” 검색 μ˜ˆμ‹œ

  • ν•œκ΅­μ–΄: "파이썬", "클린 μ½”λ“œ", "μ΄νŽ™ν‹°λΈŒ μžλ°”" β†’ 넀이버 API μ‚¬μš©
  • μ˜μ–΄: "Clean Code", "Python", "Effective Java" β†’ Google Books API μ‚¬μš©

기술 μŠ€νƒ

  • Backend: Python Flask
  • Database: SQLite
  • Frontend: Bootstrap 5, jQuery
  • APIs:
    • 넀이버 Books API (ν•œκ΅­μ–΄ μ΅œμ ν™”)
    • Google Books API (μ˜μ–΄ μ΅œμ ν™”)
  • Icons: Font Awesome

API μš°μ„ μˆœμœ„

ν•œκ΅­μ–΄ 검색어

  1. 1μˆœμœ„: 넀이버 Books API (ν•œκ΅­ λ„μ„œμ— μ΅œμ ν™”)
  2. 2μˆœμœ„: Google Books API (Fallback)

μ˜μ–΄ 검색어

  1. 1μˆœμœ„: Google Books API (ꡭ제 λ„μ„œμ— μ΅œμ ν™”)
  2. 2μˆœμœ„: 넀이버 Books API (Fallback)

API ν‚€κ°€ μ—†λŠ” 경우

  • 넀이버 API ν‚€κ°€ μ—†μœΌλ©΄ λͺ¨λ“  κ²€μƒ‰μ—μ„œ Google Books API μ‚¬μš©
  • μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ€ μ •μƒμ μœΌλ‘œ λ™μž‘ν•˜λ©° κΈ°λŠ₯ μ œν•œ μ—†μŒ

λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰

CREATE TABLE books (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    title TEXT NOT NULL,
    authors TEXT,
    publisher TEXT,
    published_date TEXT,
    isbn TEXT,
    description TEXT,
    thumbnail_url TEXT,
    purchase_date DATETIME DEFAULT CURRENT_TIMESTAMP,
    price REAL,
    notes TEXT,
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);

μ£Όμ˜μ‚¬ν•­

넀이버 Books API

  • λ°œκΈ‰λ°›μ€ API ν‚€κ°€ 있으면 더 μ •ν™•ν•œ ν•œκ΅­μ–΄ λ„μ„œ 검색 κ°€λŠ₯
  • API ν‚€ 없이도 정상 λ™μž‘ (Google Books API μ‚¬μš©)
  • 일일 μ‚¬μš©λŸ‰ μ œν•œ: 25,000회

Google Books API

  • 별도 인증 없이 μ‚¬μš© κ°€λŠ₯
  • μ˜μ–΄ λ„μ„œ 및 ꡭ제 λ„μ„œμ— μ΅œμ ν™”
  • 무료 μ‚¬μš©λŸ‰ μ œν•œ 있음

데이터 λ³΄μ•ˆ

  • 개인 μ‚¬μš© λͺ©μ μœΌλ‘œ μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€
  • API ν‚€λŠ” ν™˜κ²½λ³€μˆ˜λ‘œ κ΄€λ¦¬ν•˜μ„Έμš”
  • λ°μ΄ν„°λ² μ΄μŠ€ 파일(books.db) 백업을 ꢌμž₯ν•©λ‹ˆλ‹€

🌐 온라인 배포

Railway 무료 배포

이 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ€ Railwayλ₯Ό 톡해 무료둜 온라인 배포할 수 μžˆμŠ΅λ‹ˆλ‹€.

πŸ“‹ 배포 κ°€μ΄λ“œ: RAILWAY_DEPLOY.md μ°Έκ³ 

μ£Όμš” μž₯점:

  • 무료 ν˜ΈμŠ€νŒ… (μ›” $5 ν¬λ ˆλ”§)
  • μžλ™ HTTPS
  • κΈ€λ‘œλ²Œ CDN
  • μ–΄λ””μ„œλ‚˜ μ ‘κ·Ό κ°€λŠ₯

ν–₯ν›„ κ°œμ„  κ³„νš

  • μ±… 정보 μˆ˜μ •/μ‚­μ œ κΈ°λŠ₯
  • μΉ΄ν…Œκ³ λ¦¬/νƒœκ·Έ μ‹œμŠ€ν…œ
  • 읽음 μƒνƒœ 관리
  • 데이터 내보내기/κ°€μ Έμ˜€κΈ°
  • λͺ¨λ°”일 μ•± 지원
  • μ•ŒλΌλ”˜ API μΆ”κ°€ 연동
  • Railway 배포 지원 ✨

λΌμ΄μ„ μŠ€

개인 μ‚¬μš© λͺ©μ μœΌλ‘œ 자유둭게 μ‚¬μš©ν•˜μ„Έμš”.

About

πŸ“š 개인 λ„μ„œ 관리 μ‹œμŠ€ν…œ - νšŒμ‚¬ λ²•μΈμΉ΄λ“œ 쀑볡ꡬ맀 λ°©μ§€μš© Book Tracker with Railway deployment support

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •