TreeMap
A free, open-source disk-space visualizer. Squarified treemap, duplicate hunting, disk-full forecasting, and cleanup that only ever moves files to the Trash.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
팀이 함께 쓰는 공유 즐겨찾기 보드와, 각자 꾸미는 개인 보드를 한 화면에서 제공하는 링크 모음 서비스입니다. • 공유 보드 — 팀원 누구나 볼 수 있고, 관리자만 추가·수정·삭제·정렬합니다. • 개인 보드 — 이름 + PIN으로 로그인하면 공유 즐겨찾기 위에 나만의 링크·카테고리를 얹어 재구성할 수 있습니다. 공유 항목을 내 화면에서만 숨기거나 복원할 수 있으며, 이 변경은 다른 팀원에게 영향을 주지 않습니다. 공유 보드 (팀 공용) • 🔗 카테고리별 정리 — "전체" 화면은 카테고리 헤더 + 그룹으로 묶어 한눈에 훑고, 상단 탭으로 특정 카테고리만 골라볼 수 있습니다. • 🔎 검색 — 제목·설명·URL 즉시 검색. • 🖼️ 파비콘 자동 표시 — unavatar → Google → DuckDuckGo → 도메인 첫 글자 순으로 폴백.查看完整 README ↗
팀이 함께 쓰는 공유 즐겨찾기 보드와, 각자 꾸미는 개인 보드를 한 화면에서 제공하는 링크 모음 서비스입니다.
| 영역 | 사용 기술 |
|---|---|
| 프레임워크 | Next.js 15 (App Router), React 19, TypeScript |
| 데이터베이스 | Neon (Serverless Postgres) — @neondatabase/serverless |
| 드래그 앤 드롭 | @dnd-kit/core · sortable |
| 테마 | next-themes |
| 아이콘 | lucide-react |
| 테스트 | Vitest |
| 배포 | Vercel |
npm install
cp .env.example .env.local # 아래 환경변수 채우기
npm run dev # http://localhost:3000
.env.local)| 변수 | 설명 |
|---|---|
DATABASE_URL | Neon Postgres 연결 문자열 (?sslmode=require 포함) |
ADMIN_TOKEN | 관리자(/manage) 접근용 비밀 토큰 — 길고 추측 불가능하게 |
| 명령 | 설명 |
|---|---|
npm run dev | 개발 서버 |
npm run build | 프로덕션 빌드 |
npm run start | 빌드 결과 실행 |
npm run lint | ESLint |
npm run test | Vitest 단위 테스트 |
db/schema.sql 을 실행해 기본 테이블을 만듭니다.db/migrations/ 의 SQL을 날짜 순서대로 모두 실행합니다.
(이미 운영 중인 DB라면, 아직 적용하지 않은 마이그레이션만 실행하세요.)db/seed.sql 을 실행하면 예시 카테고리·즐겨찾기가 추가됩니다.| 파일 | 내용 |
|---|---|
2026-07-01-personal-categories.sql | 개인 카테고리 + personal_bookmarks.personal_category_id |
2026-07-03-hidden-shared-bookmarks.sql | 공유 즐겨찾기 개별 숨김 |
2026-07-03-hidden-shared-categories.sql | 공유 카테고리(탭) 숨김 |
2026-07-03-unified-category-order.sql | 공유/개인 통합 카테고리 순서(profile_tab_order) |
2026-07-05-profile-pinned-keys.sql | 개인 보드 상단 고정(핀) 목록(profiles.pinned_keys) |
| 테이블 | 설명 |
|---|---|
categories / bookmarks | 팀 공유 카테고리·즐겨찾기 |
profiles | 개인 보드 사용자 — 이름, PIN 해시, 카드 순서(order_keys), 상단 고정(pinned_keys) |
personal_categories / personal_bookmarks | 프로필별 개인 카테고리·즐겨찾기 |
personal_hidden_shared / personal_hidden_categories | 프로필별 "내 화면에서만 숨김" 목록 |
profile_tab_order | 프로필별 공유+개인 통합 카테고리 순서 |
profile_category_order | 프로필별 공유 카테고리 기본 순서 |
login_guard | 로그인 시도 제한·계정 잠금 상태 |
배포 주소(https://<project>.vercel.app/)를 팀에 공유합니다. 로그아웃 상태에서도 공유 보드를 카테고리 섹션으로 볼 수 있습니다.
우상단 내 보드 → 이름 + PIN 입력 (첫 로그인이면 새 보드가 생성됩니다).
+ 내 링크 로 개인 링크를 추가합니다.⋮ 메뉴에서 PIN 변경 / 로그아웃.https://<project>.vercel.app/manage?key=<ADMIN_TOKEN> 로 한 번 접속하면 쿠키에 저장되어, 이후 그 기기에선 /manage 만으로 관리할 수 있습니다.
DATABASE_URL, ADMIN_TOKEN 설정.main 브랜치에 push 하면 프로덕션이 자동 배포됩니다.src/
├─ app/
│ ├─ page.tsx # 메인 보드 (로그인 시 개인 보드, 아니면 공유 보드)
│ ├─ manage/page.tsx # 관리자 화면
│ ├─ layout.tsx # 메타데이터·테마·다이얼로그 프로바이더
│ └─ api/ # 북마크·카테고리·프로필·개인 데이터 라우트
├─ components/ # 보드 뷰, 카드, 카테고리 탭, 로그인 모달 등
└─ lib/ # DB 접근, 세션, 카테고리 섹션 그룹핑·정렬, 숨김 목록, 유효성 검사
db/
├─ schema.sql # 기본 스키마 (새 DB용)
├─ seed.sql # 예시 데이터
└─ migrations/ # 증분 업데이트용 SQL