Python developer. I build small tools that remove friction from everyday work,
and I send fixes upstream when the software I rely on has a gap.
I’m self-taught and I learn by shipping. I break things, read the traceback, fix the issue, and repeat until the tool feels reliable enough to keep.
Most of what I build starts as a personal annoyance: a folder that never stays organized, a rename task that takes too many clicks, a clipboard that forgets everything the moment I close it.
I use AI as a tool to explore unfamiliar concepts, learn new things, and make development easier. I also use it to help maintain and improve some of my projects, especially when it comes to repetitive tasks, debugging, and keeping things up to date.
Some projects where AI is part of my workflow:
- awesome-tools — Automated website checks, periodic updates, and maintaining the GitHub Pages deployment.
- AI-Prompt-Vault — Organizing, refining, and maintaining a collection of useful AI prompts.
- EzSort — Improving existing features, fixing bugs, and refining the overall user experience.
AI is part of how I learn and build. I use it to work more efficiently, understand things I'm unfamiliar with, and keep improving my projects.
- Building small Python tools that solve real, boring problems
- Fixing upstream bugs where the software I use is missing a useful behavior
- Exploring HTML, CSS, and Git beyond the basics of
pushandpull
| Project | What it is |
|---|---|
| EzSort | A folder sorter with a preview-first flow and undo support. CLI + desktop app. |
| EzRename | Batch renaming for files with live preview and one-click undo. GUI and CLI for Windows. |
| Easy Clipboard Manager | A local-first clipboard history tool for Windows with search, snippets, and hotkeys. |
| TreeMark | Prints any project as a tree in plain, Markdown, or emoji output. Standard library only. |
| awesome-tools | A curated directory of free and free-tier tools, paired with a searchable static web app. |
| AI Prompt Vault | A collection of prompt enhancers across categories for copy, paste, and refinement workflows. |
- No surprises. I prefer preview-first actions and reversible changes.
- Fix the bug with the test. A bug report is a test that has not been written down yet.
- Document the limits. A README that only lists strengths is marketing, not guidance.
- Keep the surface area small. If a tool can stay lightweight and dependency-free, it usually works better.
I’d rather send the fix than complain about the problem. Some of those fixes have been merged; the rest are still waiting on review.
- Small tools, not giant systems
- Clear behavior over clever abstractions
- Real user value over polished theory
- Ship the thing, learn from it, improve it
Still learning. If you're stuck on the same thing, say hi.



