Side projects are something that we're encouraged to do in our free time as developers. It can be hard to find time for side projects or stay consistent. A lot of developers have unfinished side projects. And feel shame around starting new ones without perfecting or finishing their previous side projects. It's okay to retire a side project if you're no longer interested.
There's no such thing as a "failed" side project
A lot of people consider unfinished side projects as failures. They feel shame about them. I believe there's no such thing as a failed side project. We are constantly learning and growing. And every side project is an opportunity to grow and learn something new. Changing the narrative and fixing our mindset around side projects is more important than "finishing" them.
As long as I learn something, that's a success. When we start a new side project we can leverage our past experience. We know how to do things now that we didn't before or we know what not to do. Maybe you learned how to use redux for a side project but didn't "finish" and stopped working on it. The next time you start a project you can take advantage of that experience to make it easier this time or solidify your understanding.
Know your goals
It's important to have goals in mind when you start a side project. When I started side projects in the past I wanted something people would use, wanted to learn how to build certain features (like achievements), and wanted to learn new technologies. While something like this is totally possible it can be really hard since every step is a challenge.
If I was to restart that side project now I would probably split it up into a couple of different projects or take out some of the technologies I didn't know. It became hard to reach my goal of getting people to use my side project when it wasn't built because I used a lot of technology I wasn't familiar with. If I had used something I was comfortable with and just focused on users I might have been more successful. Think about what you really want to achieve.
Know when to ship or stop
If you understand what you want out of a side project it makes it easier to stop or ship. Want people to use your app? Ship. Your project is probably more "ready" than you realize. There's a saying that perfect never ships. Shipping your side project can help you gauge if people are interested in it and what people want. Building something out in private can cause you to build features people don't want. But if you ship early you can get feedback. That makes it easier for you to iterate on your app.
If you built a side project it's okay to stop if you aren't interested or enjoying yourself anymore. Maybe you learned a new technology, maybe you learned how to interact with users. Those things that you've learned are now a part of your toolkit and will help you in the future. Don't force yourself to work on something you aren't enjoying.