Vache Aqob
0%
Loading Experience
How I Built a Reservation System for Real Businesses in Kurdistan (Bumin)

How I Built a Reservation System for Real Businesses in Kurdistan (Bumin)

Building a real-world reservation system isn’t just about code — it’s about handling messy business logic, real users, and unreliable workflows. Here’s how I built Bumin from scratch.

The Idea

At some point I noticed something simple but annoying.

Most service-based businesses here — barbers, salons, small clinics — don’t really have a proper reservation system.

It’s mostly:

  • WhatsApp messages

  • phone calls

  • or just showing up and waiting

Which leads to:

  • double bookings

  • wasted time

  • and zero organization

So I thought:

why not build something simple that actually works for this market?

That’s where Bumin started.


The Goal

I didn’t want to build “just another app”.

The goal was:

  • one platform

  • multiple types of businesses

  • flexible scheduling

  • easy to use (for both customers and owners)

Also important:

it had to actually work for real businesses here, not just look good in a demo


Core Features

Here’s what I focused on:

  • Businesses can create their own profiles

  • Each business can define services and time slots

  • One booking = one reserved slot (no overlaps)

  • Customers can book directly through the app

  • Owners can manage availability and appointments



Tech Stack

I kept it modern but practical:

  • Frontend: Next.js

  • Backend / DB: Supabase

  • Auth: Supabase Auth (later adjusted due to issues)

  • Mobile: React Native (Expo)

  • Hosting: Vercel

Why this stack?

Because I needed:

  • fast iteration

  • easy deployment

  • and something I could scale later


The Hard Part (What Actually Took Time)

This wasn’t the UI.

It was the logic.

Things like:

  • Preventing double bookings

  • Handling time slots properly

  • Making sure business hours actually work

  • Managing multiple service providers under one business

At one point I realized:

booking systems look simple, but they’re not



Problems I Ran Into

A few real issues:

  • Firebase/Auth issues (especially reCAPTCHA headaches)

  • Managing state between mobile and backend

  • Structuring the database correctly from the start

  • Making it flexible enough for different businesses

Also:

building for real users is way harder than building for yourself


What I Learned

This project changed how I think about building products.

  • Real-world apps are mostly edge cases

  • Simple UI ≠ simple system

  • You need to think like a business owner, not just a developer

  • Deployment and reliability matter more than features


Current Status

Right now:

  • The system is functional

  • Businesses can be onboarded

  • Core booking logic works

Still improving:

  • UX flow

  • onboarding experience

  • performance


What’s Next

Planned improvements:

  • Better discovery (finding nearby businesses)

  • Notifications system

  • Improved admin controls

  • Scaling it to more cities


Final Thoughts

This wasn’t just a project.

It was:

  • my first real attempt at solving a local problem

  • something that could actually be used by real people

  • and a big step from “building projects” to “building products”


If you’re building something similar:

focus less on features, more on real usage

Referenced in this post