I was inspired to make this app because a friend of mine has been wanting to do virtual karaoke, but he has had a few issues with the format. First of all, he needed a way to keep track of the sign-up list. Second, he wanted people who have signed up to be able to see their spot in line. Third, he specifically wanted a place to gather all of the video links in one place so people can have a playlist after the fact, but also so people singing can access their own link and stream their own music to eliminate the delay from singing to someone else's streamed music.

What it does

So far not much, but in the future, it will allow a karaoke host to create a new room with a randomly generated 4-digit code, and they can provide a link to a conference call. Other people can join that room with the 4-digit code, view the current sign-up sheet, and sign themselves up to sing.

How I built it

I built a simple backend using Ruby on Rails, which I deployed to Heroku. I then started building out functionality on the frontend using React.

Challenges I ran into

I forgot how to make form inputs update state. That took me a while to figure out. I also forgot that CORS can be a problem so I had a hard time figuring out why my axios calls weren't working for a while.

Accomplishments that I'm proud of

I got further than I really expected to, working on this project by myself!

What I learned

I have been dealing with a lot of impostor syndrome lately, so I think the main thing I learned is that I really do know what I'm doing. I also learned how to deploy my backend to Heroku, and how to implement TailwindCSS in my project. I just haven't had time to use that Tailwind implementation yet.

What's next?

I'm not finished with the functionality, I still need to add the "create room" and "add song" features, along with being able to edit and delete things. I also haven't styled anything yet, so that will be coming soon!

Share this project: