Self-Host

Run OpenMasjid on your own server, free, forever.

Open-source. Same code we host. docker compose up, you're live. We mean it when we say there's no lock-in.

~/openmasjid

$ git clone https://github.com/majidtahir1/open-masjid.git

Cloning into 'open-masjid'...

$ cp .env.example .env

$ docker compose up -d

Creating openmasjid_postgres... done

Creating openmasjid_web... done

Creating openmasjid_worker... done

→ Ready at http://localhost:3000

$

Why self-host?

Some masajid have an IT volunteer who'd rather own the box. Some run on TrueNAS in the imam's office. Some just want maximum control over their data. All valid.

What you get

Every feature on the Hosted plan. No artificial gates between Self-Host and Hosted. The same engine, on your hardware.

What you don't get

Managed backups. Email deliverability through our Resend account. Automatic updates. Support SLA. You can buy any of these as add-ons later.

Switch any time

Self-host today, move to hosted when your volunteer moves away. Or vice versa. Same database schema either way. Postgres dump moves cleanly between them.

Five-minute install

Three commands. You're live.

  1. 1

    Clone the repo

    git clone https://github.com/majidtahir1/open-masjid.git
    cd open-masjid
  2. 2

    Configure environment

    cp .env.example .env
    # edit .env: DATABASE_URL, STRIPE_KEYS, etc.
  3. 3

    Start everything

    docker compose up -d

    Detailed setup in the README.