I might be less favorable for OP but for me it looks like projects stop being interesting when any real challenge comes up.
Making up name and setting basics for project sound like OP does only easy stuff but has no interest to go into details.
Just like my nephew when playing games, he could “get bored” by 5 games in 1 hour. What I noticed was — he was switching because he was bad at these games but would not admit that - so he would call game boring or silly without trying to actually getting to be good.
It is likely a bit of both. I had the same trait as OP. I would actually enjoy an intellectual challenge, but to see something through you also need grit and you must 'grind' your way through boring parts and dead ends.
Also, when starting out everything looks neat and shiny, and along the way there are ugly problems that don't neatly fit into the conceptual framework you started out with. Things start to get messy, there are workarounds, less than ideal code from finding the right approach, etc. The stuff that I refactor and just 'deal with' in my paid job, but doesn't really 'spark joy' in my private life. Throwing it all away and doing something else gives that green field feeling that anything is possible yet again.
Yes you can stop project because after setting up name and code you realize it is not really that cool in terms of other people or even you won’t really use it if you build it.
One other way, is you realize how much more work it is and how much other mundane things go with it so you just come up with another project you believe somehow will be easier.
Making up name and setting basics for project sound like OP does only easy stuff but has no interest to go into details.
Just like my nephew when playing games, he could “get bored” by 5 games in 1 hour. What I noticed was — he was switching because he was bad at these games but would not admit that - so he would call game boring or silly without trying to actually getting to be good.