TreeMap
무료 오픈소스 디스크 사용량 시각화 도구로, 사각형 트리맵·중복 파일 탐색·디스크 가득 예측·정리 시 파일을 휴지통으로만 이동한다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Manually save exactly what you choose — a text selection or a full page — from
Chrome, and browse everything you've saved, organized day by day, from a
dashboard you can reach on any device. Nothing is captured unless you click
"Save." Multi-user: anyone can sign up for their own account and gets a
private, isolated archive.
Full requirements: recall-extension-requirements-v3.md.
Operations, deployment, and incident runbooks: docs/OPERATIONS.md.README 전문 보기 ↗Manually save exactly what you choose — a text selection or a full page — from Chrome, and browse everything you've saved, organized day by day, from a dashboard you can reach on any device. Nothing is captured unless you click "Save." Multi-user: anyone can sign up for their own account and gets a private, isolated archive.
Full requirements: recall-extension-requirements-v3.md.
Operations, deployment, and incident runbooks: docs/OPERATIONS.md.
[Chrome Extension] --HTTPS+JWT--> [Next.js on Vercel] --HTTPS+JWT--> [FastAPI on Railway] --> [Postgres]
extension/ — Manifest V3 extension. Manual capture only (context menu
selection save, popup full-page save, configurable keyboard shortcut), with
a chrome.storage.local-backed retry queue and a sign-in/sign-up UI (email
extension/.backend/ — FastAPI service deployed on Railway (Docker web service,
railway.json config in backend/). Postgres-backed, per-user-scoped
storage, JWT session tokens, password hashing, rate limiting, structured
logs. See backend/README.md.frontend/ — Next.js dashboard on Vercel. Day view, 30-day activity
heatmap, search, delete, email+password sign-in, server-side API proxy so
no backend secret ever reaches the browser. See frontend/README.md.recall/
extension/ Chrome extension (TypeScript, esbuild)
backend/ FastAPI backend (Python), deployed on Railway
frontend/ Next.js dashboard (TypeScript), deployed on Vercel
.github/workflows/ CI: extension build/lint/typecheck/test/package,
backend pytest, frontend lint/build/Playwright
| Workflow | Triggers on | Does |
|---|---|---|
extension-build.yml | changes under extension/ | typecheck, lint, unit tests, build, packages a versioned .zip artifact |
backend-test.yml | changes under backend/ | pytest, Docker build smoke test |
frontend-test.yml | changes under frontend/ or backend/ | lint, build, spins up the backend locally (SQLite) and runs Playwright against it |
Vercel auto-deploys previews per PR and promotes to production on merge to
main. Railway also auto-deploys the backend on push to main (the GitHub
App's repo access had silently dropped recall from its allowed
repositories, which is what caused the "Auto deploy unavailable — could not
load branches" state under Settings → Source; re-adding the repo at
github.com/settings/installations restored it). If auto-deploy ever shows
that error again, check the Railway App's repository access on GitHub first
before assuming the connection itself needs to be redone.
Each of Railway (DATABASE_URL, JWT_SECRET) and Vercel (BACKEND_URL) has
its own env vars — no secret is shared between them or with the extension,
since auth is now per-user (issued at signup/login), not a fixed shared
token. See backend/README.md and frontend/README.md for exactly which
variables go where.
Run all three independently:
# backend (needs a local Postgres, or point DATABASE_URL at sqlite+aiosqlite for quick testing)
cd backend && pip install -r requirements-dev.txt
DATABASE_URL=postgresql+asyncpg://localhost/recall JWT_SECRET=dev-secret uvicorn app.main:app --reload --port 8000
alembic upgrade head
# frontend (separate terminal)
cd frontend && npm install
cp .env.example .env.local # point BACKEND_URL at localhost:8000
npm run dev
# extension (separate terminal)
cd extension && npm install
npm run build # then chrome://extensions -> Load unpacked -> extension/dist