Developers who keep complete big projects, how you stay motivated?
In general, if you create something, you need an audience to stay motivated.
The best way to get them done is to build a frankenstein version of them in 2-3 hours, something that seriously bad, super bad code, bad design, bad architecture, crashes every 2 seconds, hardcoded things everywhere, unextendable, hard to maintain, but even then something that just boots as a vague identity of your idea.
Then focus on fixing it into better iterations and don't forget to go wild on it, instead of sqlite try adding cockroachdb, instead of basic hashmap put a redis there, whatever tech you wanted to learn recently, use it. Then let it be a hulk for a bit and invite some friends to use it. If you are still motivated, focus on best practices, maintainability, remove the overengineering and replace with reasonable changes.
Goal of side projects is to learn something new and have fun. If the fun stops, don't push it or feel bad, just walk away with the knowledge you gained. :)
My latest project is effectively impossible to complete (SaaS, evolving customer needs, etc), but I've been able to work on it consistently for the last 18 months AND get paid for it.
Before that, I wrote books/articles about React, and before that I learned a lot by building products no one wanted.
In short, consistent effort over a long time helps you accomplish things you think are impossible.
Give up and start a metahobby of collecting unfinished projects. The real treasures are the friends you made ^h^h^h^h^h things you learned along the way.
I have found that I learn something and increase my skillset with every unfinished project. That leads to, over the long run, being able to get more accomplished in less time on newer projects. Plus, as a hardware hacker, I now have a tremendous inventory of parts that can be culled from the corpses of previous "failures" with no regret because the project as a whole doesn't function anyway. I've managed to ride out the RPi apocalypse on just my own inventory.
Occasionally I finish something because the planets align, I have all the parts I need on hand (or they're available REALLY quickly), my attention/hyperfocus lasts long enough, and I can reduce scope to a manageable level.
Maybe I'm lying to myself and I'm actually just lazy and don't have enough determination to finish under my own motivation. Meh, whatever, I'm comfortable with it and having a blast.
If you're trying to make money from your side projects, I have nothing for you, sorry. I like my day job and don't need the money enough to let my hobbies become another. YMMV.
Also, try to not let your project rest for too long, even if you just do the above-mentioned baby steps. I found that the longer I am out of it, the harder it is to bring back the motivation.
Other answers are methods that may have worked for them (and likely didn't even work for them). You can't apply all those tips, so what really is most relevant to your issue?
I'd check out "The Now Habit" to understand some patterns of why you might be getting demotivated.