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.
필요한 링크 모음 배포, 나만의 방식으로 구성
Translation pending
ProductivityTypeScript · CSSGitHub @originbbOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
팀이 함께 쓰는 공유 즐겨찾기 보드와, 각자 꾸미는 개인 보드를 한 화면에서 제공하는 링크 모음 서비스입니다. • 공유 보드 — 팀원 누구나 볼 수 있고, 관리자만 추가·수정·삭제·정렬합니다. • 개인 보드 — 이름 + PIN으로 로그인하면 공유 즐겨찾기 위에 나만의 링크·카테고리를 얹어 재구성할 수 있습니다. 공유 항목을 내 화면에서만 숨기거나 복원할 수 있으며, 이 변경은 다른 팀원에게 영향을 주지 않습니다. 공유 보드 (팀 공용) • 🔗 카테고리별 정리 — "전체" 화면은 카테고리 헤더 + 그룹으로 묶어 한눈에 훑고, 상단 탭으로 특정 카테고리만 골라볼 수 있습니다. • 🔎 검색 — 제목·설명·URL 즉시 검색. • 🖼️ 파비콘 자동 표시 — unavatar → Google → DuckDuckGo → 도메인 첫 글자 순으로 폴백.Read the full 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