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。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗A private dashboard for three things: daily habits, your real week from Google Calendar, and the people you want to stay close to. (Life areas, missions, reflections and the AI coach from V1 are hidden for now; their data is kept and their code is in git history.)
This is V2 through Phase 2: the hosted foundation plus a read-only Google Calendar connection. Weekly planning (Phase 3), Gmail (Phase 4) and LinkedIn import (Phase 5) come next.
| Piece | What it does |
|---|---|
Next.js (src/app) | One project holds both the pages you see and the server code behind them, so there's no separate backend to run. |
Postgres (src/db/schema.ts) | Stores everything. Your dashboard is one document per user (the same shape as V1). People, conversations and commitments get their own tables so they can be searched and protected separately. |
Google sign-in (src/lib/auth) | You sign in with Google. Only emails in ALLOWED_EMAILS get in. Sessions are random tokens; the database only keeps a hash of each one. |
Coach (src/app/api/coach, src/lib/coach.ts) | The server builds a summary of your data, labels where each fact came from, and sends it to Claude. Your API key never reaches the browser. |
Scoring (src/lib/life) | Pure functions for XP, levels, alignment and relationship goals, covered by unit tests. |
Saves use a version number: if your phone and laptop edit at the same moment, the second save is refused and that device shows the newer version, so nothing is silently overwritten.
Nothing here costs money except the Anthropic API, which you cap yourself.
Create a private repository (for example kingdom) and push this code to it.
DATABASE_URL for you.https://kingdom-yourname.vercel.app.https://YOUR-APP.vercel.app/api/auth/google/callback and http://localhost:3000/api/auth/google/callbackAt console.anthropic.com, create an API key and set a monthly spend limit (e.g. $10) under Billing. Daily coaching typically costs a few dollars a month.
In Vercel → Settings → Environment Variables, add:
| Name | Value |
|---|---|
APP_URL | https://YOUR-APP.vercel.app (no trailing slash) |
AUTH_GOOGLE_ID | from step 3 |
AUTH_GOOGLE_SECRET | from step 3 |
ALLOWED_EMAILS | your Gmail address |
ANTHROPIC_API_KEY | from step 4 |
Never put these in code or send them in chat.
Click Deploy. The build runs the database migrations first (npm run vercel-build). Open your URL, sign in with Google, and import V1:
Add the site to your phone's home screen from the browser's Share menu.
https://YOUR-APP.vercel.app, the privacy policy to https://YOUR-APP.vercel.app/privacy, and add YOUR-APP.vercel.app under authorized domains. Save.Calendar access is separate from sign-in, read-only (calendar.events.readonly), and uses the same redirect URI, so nothing else changes in Google Cloud. Tokens are encrypted with AES-256-GCM. Disconnect revokes access with Google and deletes the tokens. Events are read live from Google and never stored; only meetings you confirm as being with someone are saved, as a conversation on that person's profile.
npm install
cp .env.example .env.local # fill in DATABASE_URL (any Postgres) and the rest
npm run db:migrate
npm run dev # http://localhost:3000
Set DEV_LOGIN=1 in .env.local to get a "Local dev sign-in" button that skips Google. It is ignored in production builds.
npm test # scoring, migration and network logic
npm run typecheck
Connections.csv from LinkedIn's own data export; no scraping.