1monthprojects

The unstyled projects.

Back

Making of Newusic

This is the article about the making of Newusic 27/02/2024
Newusic | Product Hunt newusic.info

Hello! For the second project of my journey, I decided to create something related to music again. In fact, during the development of tracktrade.today and discovering new songs every day, I wondered if it would be possible to receive music updates regarding new weekly releases based on a specific music genre.
Searching online, I didn't find much, and I'm not even sure if it might be something interesting for others, but since it is for me, I decided to develop it.

The stack remains the same:
  • Sveltekit
  • Tailwind
  • Nextauth
  • Firestore

For this project, unlike the previous one, I needed to create a cronjob that runs every week (for example, on Thursdays) to retrieve all the releases of the week and another cronjob to send any notifications via email to users.


Initially, I tried to use the cronjobs provided by Vercel, but for the free version, the timeout is 10 seconds. Since the operation takes about 12 seconds, I had to move on to other solutions, and I decided to use Firebase since I had already implemented a cloud function scheduler in the past.
This function scrapes some music websites to retrieve the latest music updates (typically music releases occur on Fridays) and writes to the database (Firestore) all the albums published on that day. I don't manipulate any data, I just save them as I retrieve them.
As for the website, I tried to approach it as some gurus teach, namely by releasing with a feature and a checkout button. There's nothing else except a dashboard that allows the user to view the various releases with the various filtered albums published based on the selected music genre.

So, it's a "1 feature startup." 😅

During development, perhaps, I lost sight of the main key that made me decide to start this adventure, namely simplicity and an unstyled project. In fact, I spent a lot of time deciding how my app should look.

unstyled-tweet

Developing an unstyled project is very complicated.

At the moment this is the situation about the user dashboard:

newusic-1 newusic-2

For the next idea, I would like it to be really bare-bones in terms of graphics so that I can focus exclusively on functionality, and if it’s validated, then add value with graphics only later on.


End part 0

In the past week, I completed work on setting up cron jobs to retrieve new albums every week and filter the releases according to users' genre preferences. It was challenging as I had to consider numerous scenarios that I hadn't initially accounted for (my mistake!).

Additionally, I've scheduled my first launch on Product Hunt and I'm extremely excited about it! 🥳

newusic-on-ph



I have a problem that needs to be addressed as soon as possible: I always feel like my products are never ready to be published! I despise this feeling!

Now, I'm going to design the landing page. Currently, it's a simple page with just one button. While it perfectly reflects the idea of unstyled projects, but I've realized that people aren't drawn to unstyled apps! So, I'll continue to follow the principle of building unstyled projects, but I won't overdo it. Actually, this is the situation of my landing page:

newusic-3


End part 1

Yesterday I made a tweet to show my progress about the landing page of the site. I decided to do more on this landing page so my initial idea of unstiled project is failed 😛
The tweet:

newusic-tweet



Anyway I received some advice about the hero copy so now this is the final result:

newusic-final-hero


End part 2

Today I've scheduled, for sunday, my first Product Hunt launch 🥳

I'm so happy about it!

newusic-final-hero


End part 3