Small, self-contained tools I built to solve specific problems. No installs, no accounts — open in a browser and start using. Download the HTML file to keep a local copy that works offline.
A dark-mode job search dashboard for tracking every application in one place. Log status, salary, links, and notes. Store your employment history for quick reference during applications. Keep a list of job boards you're actively watching. Export your data to JSON anytime and import it back — your data stays with you.
Track title, company, status, date, salary, and notes. Filter by status, date range, or keyword. Sort any column.
Store past employers, titles, dates, salaries, and addresses — all the info you need when filling out applications.
Save everything to a JSON file. Load it back on any device. No account, no cloud — your data stays local.
All data is stored in your browser's localStorage. Nothing is sent to a server. Export regularly to keep a backup.
A material inventory tracker built for makers, 3D printers, and tradespeople. Log your filament, hardware, lumber, and general supplies with photos, quantities, and locations. The shopping list auto-builds from items that fall below threshold, and the usage log tracks every draw-down over time. No account, no backend — everything lives in your browser.
Dedicated forms for Filament, Resin, Lumber, Hardware, and General supplies — each with domain-specific fields.
Items that fall below your set threshold automatically appear on a shareable shopping list.
Every time you draw from stock, the usage is timestamped and logged so you can track consumption over time.
All data is stored in your browser's localStorage. Export to JSON anytime to back up or transfer your inventory.
A Python script that automates your daily job search. It pulls live listings from Adzuna and Arbeitnow, scores each one against your resume using Claude AI, and emails you a digest of only the strongest matches — 8/10 or higher. Set it up once, run it daily, and stop scrolling through irrelevant postings.
Pulls fresh listings daily from Adzuna and Arbeitnow based on your target role, location, and keywords.
Claude reads each posting against your resume and scores the match 1–10. Only scores 8 or higher make the digest.
Sends a formatted email with your top matches — title, company, score, and a direct link to the posting.
Requires Python 3, a free Adzuna API key, an Anthropic API key, and a Gmail App Password. Setup instructions are in the script.