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.
Tailor your resume to a job posting, and decide every change yourself.
ProductivityTypeScript · CSSGitHub @Dam-SamOnlineOwner 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
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Tailor your resume to a specific job posting. ResumeDB reorders your experience and skills by relevance and puts an AI rewrite beside every bullet, aimed at the job. You keep your own wording or take the AI's, bullet by bullet, then download the result as Word and PDF.
Built with Next.js, Supabase (accounts + Postgres), and Claude.
email=[email protected] password=dev-only-not-a-secret
Needs Node 20+.
npm install.env.example to .env.local and fill in the keys (see below).npm run dev, then open http://localhost:3000.anon public key into .env.local as NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY.supabase/migrations/0001_profile.sql, then 0002_grants.sql, then 0003_tracker.sql, then 0004_prompts.sql. The first creates the profile tables with Row Level Security, so each user can only read and write their own rows; the second gives signed-in users access to those tables (without it every query fails with "permission denied"); the third adds the application tracker tables, with their own rules and grants; the fourth stores the AI prompts (see below).http://localhost:3000 and add http://localhost:3000/auth/callback to the Redirect URLs (plus your deployed URL's /auth/callback later).http://localhost:3000. Authorized redirect URI: https://<your-project>.supabase.co/auth/v1/callback.Supabase's built-in sender is for testing only, so confirmation emails go through Resend:
smtp.resend.com, port 465, username resend, password = the Resend API key, sender no-reply@<your domain>, sender name ResumeDB.The Resend key and Google secret live only in those dashboards, never in .env.local.
The parse and tailor instructions live in the prompts table, so you can change them without redeploying. Versions are never edited (the database blocks it); you add a new one and switch to it.
prompts → Insert row: name = tailor, version = the next number, system = the new instructions, notes = what changed. Leave is_active off.select activate_prompt('tailor', 2); The next tailoring uses it. Every run in llm_runs records which version it used (prompt_id, prompt_version).select activate_prompt('tailor', 1);Always switch with activate_prompt, never by ticking is_active by hand: between two separate saves there would be no live prompt and AI calls would fail. Local and deployed apps share this database, so a switch applies to both at once.
| Name | What it is |
|---|---|
NEXT_PUBLIC_SUPABASE_URL | Your Supabase project URL (safe for the browser) |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Your Supabase anon key (safe for the browser; RLS protects the data) |
ANTHROPIC_API_KEY | Claude API key, server only |
LLM_PROVIDER | claude |
LLM_MODEL | Optional, defaults to claude-opus-5-5 |