A common reason people abandon personal projects is scope creep before version 0.1 even exists.
When you begin, your enthusiasm is at its highest, so you design a system with twenty features, authentications, integrations, and scalable infrastructure. Two weeks later, you have three unfinished files and a heavy sense of guilt.
Cut the scope in half. Then cut it in half again. What is the single core transaction? Build just that. Get it running. Once something is alive, keeping it going takes far less emotional energy than trying to birth a leviathan.
A small finished tool that works reliably is ten times more valuable than a magnificent codebase that doesn't boot.