I started making apps for fun in 2018 or earlier, I can’t remember. Six years passed and I never managed to finish a single one. I never managed to get a single user or even showcase it to anyone ( except recruiters maybe ). How is this possible, I am asking myself ?

There’s always something between my and this next, perhaps last step. First it was inability to implement authentication, then lack of knowledge about hosting, deployment or GDPR compliance.

Frequently, I found myself diving into projects that were too big and I got lost in unnecessary features. Additionally, I often found myself switching between different technology stacks, causing my progress to stall for weeks at a time.

Yet, the worst that would happen is completing a project only to realize I lacked the confidence to showcase it on the internet. This mental barrier is by biggest enemy, but this time I will overcome it!

Well, this project will be different.

Finally I have necessary skills, a baggage of experience and most of all a lot of frustration caused by unfinished project.

This time I know how to boil down my project to most essential features. I know target audience and have a clear strategy for engaging them.

The idea for the app is far from being original but that is not what matters to me now. What matters most to me now is achieving that initial visit and securing the first user signup.

So, what is this app?

I’ve developed a chat room app tailored for my neighbors. It’s a straightforward, single-page project where users can create posts and engage in discussions by commenting on others’ posts. Think of it as a localized version of Reddit or Discord.

How will I get first user?

I can chat with my neighbors in the corridor or elevator, and I plan to hang posters on the information board in the foyer. Additionally, I could mention it during the upcoming building association meeting, although that idea feels somewhat ambitious given my personality.

Development time and stack

I made the initial commit on April 22nd and deployed the MVP just yesterday, on May 6th. So, the entire development process took only two weeks.

I built it using SvelteKit and PostgreSQL. Authentication is managed by Firebase, and the app is deployed on a Linode droplet.

Two weeks isn’t bad, but I’m confident I could speed it up next time.

I did encounter a setback that cost me two or three days: I initially started the project with MongoDB but switched to PostgreSQL. I needed a database that supports transaction. MongoDB only supports transactions when set up as a replica set or a cluster. But how to setup replicas with docker? I spend three days failing to figure that out and consequently moved to PostgreSQL.

Leveraging Firestore and Firebase hosting could potentially shave off two or three days from the development timeline. On the other hand dockerizing a SvelteKig app and connecting it to PostgreSQL always leads to surprising errors and delays.

Nevertheless, I’m averse to sharing my credit card information with cloud services that offer infinite scalability. I’d rather invest an extra two days in dockerizing my app than risk financial strain caused by cloud expenses.

Next steps

There is a lot of things that will be missing in MVP – no analytics, no notifications for users, no profile settings nor support for other languages. I will resist the temptation to add those. I will focus on acquiring the users.

Even if the app doesn’t gain traction, I still have a bunch of ideas for startups in my sleeve that I will most certainly build soon.