It runs on my machine, and that is the problem
For months, two of my own tools could not run at the same time. Not because they conflicted in any interesting way, but because I had given both of them the same port number and never noticed.
If that phrase means nothing to you, it is simpler than it sounds. Some of my tools open in a browser window even though nothing about them is on the internet. They run right here on this computer and the browser is only the screen. The port number is the part of the address that says which of those tools you are asking for, and two of them cannot share one, the same way two houses on a street cannot share an address. Whichever starts first takes it, and the other does not start at all.
Why would I have noticed? I only ever needed one at a time, until the morning I needed both.
That is a five-minute fix. The reason it is worth a post is the family it belongs to.
Look at almost anything I have built and you will find a small assumption I typed once because it was true at the time. The path to where the design software is installed on this computer. A shortcut sitting on my desktop. A helper file in my user folder that nothing else knows about. Each one was correct when I wrote it. Each one is correct in exactly one place.
Yesterday, I said a tool nobody remembers exists might as well not have been built. A tool only I can run has the same ending and a different cause. They fail at the same moment: when somebody would have used it.
The sharpest example is this website. The generator that builds it reads a file from a fixed location on this computer, outside the project folder entirely. That works perfectly, right until you want a build server to do it, and then it does not work at all. I have known about that for weeks. It is still there.
What fixes this is not clever, which is part of why it gets skipped. An environment variable, so the tool can be told where to look instead of assuming. A port chosen by asking what is free rather than by picking a favorite number. I have done both, in the places where somebody else was actually going to run the thing, and each took an afternoon.
So why is most of my work still the other kind? Because a tool that runs here solves my problem today, and a tool that runs anywhere solves somebody else's problem later. I keep choosing today. That is a real answer and not a flattering one.
The catalog on this site is honest about what these tools do. It is quieter about how many of them assume this desk is the only place they will work. If you are building your own, the question worth asking early is not whether it works. It is who else could run it.
Be Better - build it so somebody else can run it.