Introducing HargaTurun – Marketplace Price Tracker for Indonesia Marketplaces

How It Looks Like..

Background

So, due to the global shortage of chips worldwide, the price of many electronic products isn’t making sense. For example, the MSRP of PS 5 is 399 USD but, due to the shortage, you have to shell out more than 800 USD to get one! The situation for GPU cards is much worse, the price in the market can be 3 or 4 times the MSRP price!

As a patient and optimistic person, I believed the situation will be better in the future so I held out and didn’t fall into the scalper’s hand! So almost every day, I regularly check the prices of those products in my local marketplace. I was like, “..there’s should be an app or something to do this?”. Unfortunately, the marketplace doesn’t have this feature and there’s no such service for the Indonesian marketplaces. That’s how HargaTurun is born!

Tech Stack

Front End

It’s been a while since I do any JavaScript work. And from my experience, as mainly a backend person, it was very painful to work in ReactJs. VueJS was a bit better, but I always think that it can be easier. Then I read about Svelte! It’s easy to grok and it’s very performant 👍! Learning Svelte from zero is much easier than having to re-learn React or Vue again. As I want this project to be released as soon as possible (and me having a bit of fun), the decision easily fell to Svelte and their SvelteKit!

For the CSS framework, I heard a lot of noises about TailwindCSS so I wanted to give it a whirl. But it can take a while to make it good because you have to painstakingly add all necessary utility classes to your components. It is nice because you can make it unique and you have a lot of flexibility in designing your website. However, the uniqueness of the design currently is not the top priority of the project but I still want to use it! Luckily, I found DaisyUI! It’s looking great out of the shelf and I still have the power of TailwindCSS to customize my components when I need it.

Back End

For the backend code, I am using Go (golang). But I am using Beego (one of Go’s frameworks) anymore and instead opt to use Gin. One of the reasons for using Go is because there are some snippets from my previous personal project (namely Terhemat), that I can reuse for HargaTurun. For the database, I am using the trusty and resilient PostgreSQL!

Deployment

A few months ago, I read about CapRover from a forum, and I want to give it a shot. For those who don’t know it, it’s like a Heroku (PaaS) of your own. It’s very simple and easy to use and deploy. I run it on top of a 2 GB instance on Digital Ocean with no issues! I can create provisions database and new apps with just a few clicks. As a result, I moved all of my (remaining) projects there, including this blog!

Marketing

As an engineer, this is the most dreading thing to do! But it is necessary unless you want your apps to be collecting virtual dust sitting in the corner of a room. I’ve tried Instagram Stories and Tiktok ads before but there’s no conversion at all. People who are clicking on the ads seem to be bots or misclicked the ads because most of them spent less than 1 second on my websites. Only one of them seems to be a bit interested because he/she is spent a bit of time. But out of the 30 USD that I’ve given to both of the platforms, I got 0 conversions! And my definition of conversion is just as simple as at least they register.

Do I just totally suck at targeting my users? I have watched some tutorials on YouTube explaining how to optimize this and I have followed them but there was no difference at all. Because of that experience, there are two possibilities; possibility 1: there are bad actors that are clicking the ads. possibility 2: people have created ad blindness on Facebook and Tiktok because they are too many of them.

So I tried something that I am 100% sure that there are real people that will read the ads and are not going to misclicked it: donating to streamers! It worked pretty well, it’s still very expensive for a hobby project, but it’s much better than the zero conversion that I got previously.

Conclusion

So yeah, I got to try a lot of new things because of this. For now, I am not worrying much about whether this will be successful or not. So what do you think about this? Leave your message in the comment section, thank you!

Leave a Reply

Your email address will not be published. Required fields are marked *