尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
사회문제 기사 북마크 앱 (대학 과제)
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗수업이나 리포트를 준비하면서 읽은 사회문제 기사를 한곳에 모아 정리하는 웹 앱입니다.
| 기능 | 설명 |
|---|---|
| 기사 등록 | 링크, 제목, 카테고리, 한 줄 메모 입력. 링크를 넣으면 기사 제목을 자동으로 가져옴 |
| 목록 보기 | 등록한 기사를 최신순으로 표시 |
| 카테고리 필터 | 환경 · 노동 · 젠더 · 교육 · 주거 · 기타, 카테고리별 기사 수 표시 |
| 수정 | 등록한 기사의 내용 수정 |
| 삭제 | 확인 창을 거쳐 기사 삭제 |
http(s)://로 시작하지 않는 링크, 목록에 없는 카테고리는 저장되지 않고 한국어로 안내합니다. (서버와 데이터베이스에서 이중으로 검사)@neondatabase/serverlesssin1 — Neon DB와 같은 지역)app/
├── page.js 목록 + 카테고리 필터 (/)
├── new/page.js 기사 등록 (/new)
├── articles/[id]/edit/page.js 기사 수정 (/articles/번호/edit)
├── actions.js 서버 액션: 등록·수정·삭제·제목 가져오기
├── error.js / not-found.js 오류 화면 / 404 화면
└── layout.js 공통 틀
components/ ArticleCard, ArticleForm, CategoryFilter, DeleteButton
lib/ DB 연결, 카테고리 목록, 제목 가져오기, 번호 검사
db/schema.sql articles 테이블 정의
scripts/setup-db.mjs 테이블 생성 스크립트
articles 테이블)| 칸 | 형태 | 설명 |
|---|---|---|
id | 정수 (자동 증가) | 기사 번호 |
title | 글자 (1~200자) | 제목 |
url | 글자 (http(s)://로 시작) | 기사 링크 |
category | 글자 (6개 중 하나) | 카테고리 |
memo | 글자 (0~200자) | 한 줄 메모 |
created_at / updated_at | 날짜+시간 | 등록 / 마지막 수정 시각 |
npm install
.env.example을 복사해 .env 파일을 만든 뒤 연결 주소를 넣습니다.
cp .env.example .env
npm run db:setup
npm run dev
.env파일에는 데이터베이스 비밀번호가 들어 있으므로 GitHub에 올리지 않습니다. (.gitignore에 포함)