You build the app.The users keep their data.Bazaar takes care of the hassle.

One account per user. One database per account. Your app just asks.

Most backends give you one big database with everyone's rows in it, and you write the rules that keep them apart. Bazaar flips it: each user has their own database, and your app works inside it with their sign-in.

01 They sign in With a free Bazaar account. The same account works in every Bazaar app, so the second app is one click. bzr.login()
02 Your app uses their database Collections of JSON documents with live updates, plus files. Everything lands in the signed-in user's account. bzr.collection("notes")
03 They share on purpose Read or write for one person, an organization, or anyone. Down to single documents. They can take it back. bzr.permissions.create(…)
04 You deploy static files No server, no secrets, no database credentials. GitHub Pages, Netlify, Cloudflare Pages, your own nginx. npm run build

The same app, two ways to build it.

THINGTYPICAL BACKENDBAZAAR
Users' data One database you own and secure Each user's own account
Who can see what Rules you write and hope are right Private until the owner grants access
Logins Your user table, your password resets Bazaar accounts
Hosting bill Yours, grows with every user None for you; users' storage on their own plan
Export and delete requests You handle them Users do it in their dashboard
If you stop maintaining it Shut down, users lose data Keeps running; data stays with users
Server code Yes Not planned

The honest version of the security model.

Ownership changes who holds the data. It doesn't make anyone blind. Here's exactly where the lines are.

You, the app makerNo server-side copy of anyone's data. Your app's code reads what the user's sign-in allows, in their browser. Bazaar blocks reading what wasn't granted; it can't stop an app from misusing what was.
Other usersNothing, until shared. Shares are per collection or document, per person, organization or everyone, read or write.
BazaarRuns the servers, so it technically can. Not end-to-end encrypted yet; that's coming soon, as is bring your own backend. Hosted in the US or the EU, the user picks. Used only to run the service.

Less power. Far fewer problems.

Only frontend skills If you can build the UI, you can ship the whole app. We've built chat, a microblog, a multiplayer game and a kanban board this way.
Deploy like a blog The app is a folder of static files. Host it anywhere, forever, for free on most static hosts.
Less to be liable for No table of personal data on your side, so far less to secure, breach or answer for. Your own legal duties don't vanish; there's just much less to cover.
Social from day one Contacts follow users across Bazaar apps. Someone who added their partner in a list app already has them in yours.
Organizations, built in Organizations own shared data. Remove a member and their access goes with them, instantly.
Charge without a billing backend A paywall is a permission filter. Products, subscriptions and checkout are in the SDK.

We're not the backend for every app. And that's OK.

The backend always runs as the end user, on the end user's account. For most apps that's the point. For some it's a dealbreaker.

You need server-side logic Scheduled jobs, push, webhooks, calls to other APIs. Not available, and not planned for now.
You need to query across all users Global leaderboards, analytics, a feed of strangers. There's no table of everyone.
Your users can't make an account Everyone signs in with Bazaar. Anonymous visitors can't read data.
You need control over your users' data Keeping records after a user deletes them, removing what someone posted, training on it. Here each user holds their data and decides what you get.

From npm install to a signed-in, syncing app.

Guides for React, Vue and plain JavaScript.