Pick the channel that fits your message — it helps me reply faster.
I read every message that reaches me through the channels below. Because I run this whole project solo, routing your message to the right place makes a real difference in how quickly I can help. Here's a quick map of what goes where, followed by answers to the questions I get most often.
Open a GitHub Issue on the relevant repository. Include the tool name, your browser and operating system, the exact steps to reproduce the problem, and what you expected versus what actually happened. A screenshot or a short recording helps enormously. The more specific you are, the faster I can ship a fix — "the JSON formatter breaks on line 3 of this snippet" is far more actionable than "it doesn't work."
Yes, and I genuinely welcome these. Open a GitHub Discussion and describe the problem you're trying to solve rather than only the feature you imagine. I often build a different (and better) tool once I understand the underlying need, so framing it as a problem helps me find the right solution. Popular requests do get prioritized, though I weigh them against quality — I won't ship a half-baked feature just to tick a box.
Both are possible. First, try a hard refresh (Ctrl+Shift+R or Cmd+Shift+R) to rule out a cached version, and check whether the issue reproduces in a private/incognito window with extensions disabled — some browser extensions interfere with client-side scripts. If it still fails, open a GitHub Issue with the details above and I'll investigate. Because every tool is open source, you can also inspect the code directly.
I'm based in Singapore (UTC+8) and work on these projects alongside other commitments. I aim to acknowledge bug reports and support requests within a few business days. Feature requests and general questions may take a bit longer. Complex fixes — a bug that requires reworking a tool's core logic, for example — can take weeks to do properly, and I'd rather take the time than ship a rushed patch. Thank you for your patience.
Yes. Every tool on this site is 100% client-side: the code runs in your browser and your inputs are never transmitted to a server I control, because there is no backend. You can verify this yourself by opening your browser's developer tools (F12) and watching the Network tab while you use a tool — you'll see no request carrying your data leaves the page. The only third-party network requests are static assets and analytics. See the guide on auditing browser tools for how to check any online tool, not just mine.
Most of them, yes. Because the tools are static HTML and JavaScript, once a page is loaded it can keep running without a network connection, though fonts and some assets may not cache. If offline use matters to you for a specific tool, let me know and I can confirm whether it works fully disconnected or improve it to do so.
The tools are free, with no sign-up and no paywall. The articles and guides are free to read. Everything on this site is free; there is nothing to buy. Open-source libraries carry their own licenses (usually MIT) on their respective GitHub repositories.
Because the client-side tools don't transmit or store your data on my servers, there's generally nothing to delete — what you compute stays on your device and is gone when you close the tab. For the limited data this site does collect (analytics data), see the Privacy Policy for your rights and how to exercise them, including requests for access, correction, or deletion. Reach out through GitHub with the subject "Privacy Request" and I'll respond within the timeframe stated in that policy.
Possibly. I'm open to sponsorships that don't compromise the independence of the tools or the writing — no advertiser can pay to change a recommendation or suppress a comparison. For sponsorship or collaboration inquiries, start at GitHub Sponsors or message me on GitHub with the details of what you have in mind.
A few details make any message more useful and get you a faster, better answer:
I'm based in Singapore (UTC+8) and work on these projects alongside other commitments. I aim to acknowledge bug reports and support requests within a few business days, and I read everything that comes through — even when I can't reply to all of it. Complex fixes can take longer, and I'll always prefer taking the time to do something properly over shipping a rushed patch. Thank you for your patience, and thank you for using the tools.
I don't collect the contents of messages you send through third-party platforms — those are governed by each platform's own privacy policy. For how this site itself handles data, and for any privacy-rights request (access, correction, or deletion of any data this site does hold), see the Privacy Policy. To submit such a request, reach me through GitHub with "Privacy Request" in the subject and I'll respond within the timeframe stated there.