v1.0.9 LTS — 87 plugins (25 free + 62 paid), Go-native binary, CLI/Admin lockstep. What's new
nSelf vs Firebase
Firebase is the opposite of nSelf in almost every axis: managed NoSQL vs self-hosted Postgres, lock-in vs portability, per-event pricing vs flat bundles. If you are comparing them, you are probably at the moment where Firebase's bill hit three figures and you started googling alternatives.
The short version
| nSelf | Firebase | |
|---|---|---|
| Database | Postgres (SQL, relational, Hasura GraphQL) | Firestore / RTDB (NoSQL, document) |
| Auth | nHost Auth (JWT, OAuth, magic link, MFA) | Firebase Auth (Google-hosted) |
| Functions | CS_1..CS_10 — any language, long-running, stateful | Cloud Functions — Node/Python, cold starts, stateless |
| Storage | MinIO (S3 API) on your server | Firebase Storage (Google Cloud Storage) |
| Hosting | Your server | |
| Data residency | You choose | Google's regions |
| Pricing | Flat plugin bundles | Spark (free) or Blaze (pay-per-use — reads, writes, invocations, egress, storage-second) |
| Vendor lock-in | Near zero | High — proprietary SDKs, query language, security rules |
| Offline sync | Not built in | First-class on mobile |
Where Firebase wins
- Firebase is great for mobile. The offline-first SDK, real-time sync, and Crashlytics are genuinely best-in-class.
- Google scales for you. You will not outgrow Firestore in a reasonable timeframe. Reliability is extremely high.
- Auth social providers. The Firebase Auth social provider matrix is broader than nSelf's today.
- Fast to ship. Weekend hackathon projects reach production in hours on Firebase.
Where nSelf wins
- SQL. Postgres is a real database. Relations, joins, transactions, window functions, full-text search, pgvector. Firestore's query model is a lookup table.
- GraphQL out of the box. Hasura gives you typed GraphQL + subscriptions + remote schemas. Firebase has no equivalent; you hand-roll Cloud Functions.
- Cost stops going up. Firebase bills per document read, per function invocation, per stored byte, per egress byte. nSelf bills your hosting provider once a month.
- No lock-in. Firestore data and security rules are proprietary. Migrating off Firebase is a rewrite. Migrating off nSelf is a
pg_dumpaway. - Plugin ecosystem. 87 plugins — chat, livekit, commerce, CMS, AI, etc. Firebase extensions exist but the marketplace is smaller and inconsistent.
- The AI stack. ɳClaw, ɳMux, ɳVoice, ɳBrowser — a full AI assistant platform with persistent memory on your own server.
- Real open source. MIT core. You can read every line, fork every plugin.
Pricing comparison (10k DAU, one app)
- Firebase Blaze: tens of millions of reads/month + tens of thousands of function invocations + egress ≈ $100–$500/mo, depends heavily on read patterns. Frontend queries are almost free individually, brutal in aggregate.
- nSelf: Hetzner CX33 ($14.90/mo) + plugin bundle ($0.99/mo) = ~$16/mo.
At 100k DAU the gap widens by an order of magnitude.
Where migration hurts
- Firestore → Postgres is a data model rewrite. Denormalized documents must be split into tables.
- Firebase Auth → nHost Auth. JWT format differs. Existing user sessions invalidate unless you sign a one-time migration token.
- Cloud Functions → CS_N. If your functions are Node/Python and don't use Google-only APIs, this is straightforward. Otherwise rewrite.
- Security rules → Hasura permissions. Different mental model (per-table RBAC vs per-document rules).
Migration outline
- Map Firestore collections to Postgres tables. Denormalize where needed.
- Export Firestore via
firebase firestore:export, transform,COPYinto Postgres. - Reissue auth tokens for existing users (one-time token, ~2 week validity).
- Port Cloud Functions to CS_N services (each a Go/Node/Python app behind Nginx).
- Rewrite Firestore security rules as Hasura permissions.
- Point DNS. Keep Firebase project read-only for 30 days as rollback.
When to pick Firebase
- Mobile-first app where offline sync is a product requirement.
- You will not care about the bill for 12–18 months.
- You have no server-side team and no plan to get one.
When to pick nSelf
- You want a real database.
- You want the bill to stop at your server's monthly cost.
- You want portable data you can move in an afternoon.
- You want Postgres + GraphQL + AI + 87 plugins on day one.
Links: install nSelf · pricing · full comparison matrix