Learning is hard. Learning anything while also having limited spare time is even harder. Even scrounging the ideas may take some time and, as you'll soon find out, it's a lot harder to make something for yourself. Inevitably the perfectionist inside will find the worst time to show up.
A shortlist of ideas
Here are some ideas to get you started with some explanations as to why I think they are interesting:
- URL shortener: You can create a quick one in a few minutes and spend the rest of the time bikeshedding about the type of DB to use and what extra features to add.
- Pomodoro tracker: Same as before, you can create a very simple one in a matter of minutes, but this time you'll want to spend a bit more time on the UI and maybe turn it into a PWA.
- Forum: This one has a bit more complexity, but start with just threads and posts and work your way up.
- Static site generator: I'm not asking you to build the next Hugo or Jekyll, but something small. I for one have learned quite a bit while making my own site and the builder that generates it.
- API Consumer: Pick an api from ProgrammableWeb or ApiList and whack something at them. See what sticks!
Tips to stay focused
Start small and don't dream too far in the future. You can always rewrite/refactor the entire codebase on a whim.
Try out new things while making these. Perhaps you never tried to use classes in Javascript or to try a more functional approach, now is your chance! Since you're also trying out newer things, perhaps give some new packages a bash. Maybe you'll like Vue, or maybe you'll love MobX.
Remember, these are learning experiences, challenge yourself in order to learn something.