TreeMap
무료 오픈소스 디스크 사용량 시각화 도구로, 사각형 트리맵·중복 파일 탐색·디스크 가득 예측·정리 시 파일을 휴지통으로만 이동한다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A minimalist, keyboard-first TODO app that organises tasks on a four-quadrant
importance/urgency matrix (the Randy Pausch / Eisenhower matrix), instead of a
flat list. Important quadrants are on top; urgent quadrants are on the right
by default:
Prefer the classic Eisenhower layout with Do in the top-left? Open
Settings (gear icon, ?, or ⌘/Ctrl + ,) and set Urgent column to
Left. Only the columns swap; the important row always stays on top, and
the 1–4 keys still follow priority.README 전문 보기 ↗A minimalist, keyboard-first TODO app that organises tasks on a four-quadrant importance/urgency matrix (the Randy Pausch / Eisenhower matrix), instead of a flat list. Important quadrants are on top; urgent quadrants are on the right by default:
| Priority | Position | Title | Meaning |
|---|---|---|---|
| 1 | top-right | Do | Urgent and important |
| 2 | top-left | Plan | Important but not urgent |
| 3 | bottom-right | Delegate | Urgent but not important |
| 4 | bottom-left | Eliminate | Not urgent and not important |
Live app: https://lucijanblagonic.github.io/first-things/
Prefer the classic Eisenhower layout with Do in the top-left? Open
Settings (gear icon, ?, or ⌘/Ctrl + ,) and set Urgent column to
Left. Only the columns swap; the important row always stays on top, and
the 1–4 keys still follow priority.
The first time you open it in a browser, the board starts with three example tasks that show due dates and notes. They are ordinary tasks: delete them and they stay gone.
The header holds the title and two icon buttons (hover or focus them for a tooltip):
It's a static site: no build step, no framework, no runtime dependencies.
Data is stored in the browser only, via localStorage.
The live app can be installed so it opens in its own window, like a native app:
Once installed it works offline after the first visit, and new versions arrive automatically the next time it is opened online. On a desktop browser the installed app and the browser tab share the same board; on iOS the Home Screen app keeps its own board, separate from Safari's.
nvm use # Node >= 20 (repo pins 22 via .nvmrc)
npm install
npm run serve # serves the repo root at http://localhost:4173
Then open http://localhost:4173/ in a browser.
Note: opening
index.htmldirectly viafile://does not work — the app is built from native ES modules, which browsers only load over HTTP(S). Always usenpm run serve(or any other static file server).
npm test # unit tests (node:test) for src/core/*
npm run test:e2e # Playwright end-to-end tests (Chromium, Firefox, WebKit)
The PNG icons in icons/ are rendered from the SVGs next to them with
node scripts/render-icons.mjs and committed; re-run it after editing an SVG.
test:e2e starts its own local server automatically (see
playwright.config.js), so you don't need npm run serve running first.
Buttons show their shortcut as a keycap (for example "Add task N"). Press
?, ⌘/Ctrl + ,, or use the gear button to open Settings, which lists every
shortcut (it's generated from the same table the app uses, so it can't drift).
Single-key shortcuts (digits, letters, ?) can be turned off in Settings if they conflict with assistive technology or voice control; Escape,
Enter, arrow keys, Space, and all Ctrl/⌘ combinations keep working either way.
| Keys | Action |
|---|---|
1 2 3 4 | Focus the quadrant with that priority |
↑ / ↓ (also k / j) | Focus previous / next task in the current quadrant |
← / → (also h / l) | Focus the quadrant to the left / right (follows the layout setting) |
n or c | Open the add input in the current quadrant |
Enter or e | Open the edit dialog for the focused task |
x or Space | Toggle completion of the focused task |
Backspace or Delete | Delete the focused task (with undo) |
Ctrl/⌘ + z | Undo the last delete |
Ctrl/⌘ + ↑ / ↓ | Move the focused task up / down within its quadrant |
Ctrl/⌘ + ← / → | Move the focused task to the quadrant to the left / right |
Shift + 1–4 | Move the focused task to that quadrant |
? | Open Settings |
Ctrl/⌘ + , | Open Settings (also while typing) |
Escape | Close a dialog or tooltip, cancel the add input, or collapse a completed list |
Tasks are also fully operable with a mouse, including drag & drop to reorder or move between quadrants.
Tasks and preferences are stored in your browser's localStorage, scoped to
this site's origin. This means:
localStorage disabled fall
back to in-memory storage for the session (with a banner warning that
changes won't be saved).Settings → Data takes your tasks out and brings them back in:
first-things-YYYY-MM-DD.json). Import file, on any computer,
replaces that board with the file's tasks after a confirmation that shows
how many tasks will be replaced and how many will be loaded.Import and Paste replace the board; they do not merge. Tasks only: theme,
layout and shortcut preferences are not included. The board that was replaced
is kept as a decision-matrix:backup-… entry in the browser's localStorage
(the app was called Decision Matrix before it was First Things; storage keys
keep the old prefix so existing boards carry over).
Files or text that aren't a First Things board, or that come from a newer
version of the app, are rejected and change nothing.
Storage is implemented behind a small adapter interface
(src/core/storage/adapter.js), so a future change could add a synced
backend (e.g. a Gist-based adapter) without touching the rest of the app.
See openspec/ for the proposal, specs, and design decisions
behind this app.
Icons from Lucide (ISC license).