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.