Dharmendra Jagodana
Founder of BuildBase. Builds the platform and the six products that run on it.
101 posts · page 3 of 9
What are entitlements in SaaS, and what a plan change does to each kind
In SaaS, an entitlement is what a customer's plan lets them do: a feature, a limit, a quota or a credit grant. The four look alike until the plan changes.
What is multi-tenancy, and why the tenant is whoever pays
Multi-tenancy is one app serving many customers with their data kept apart. The decision that costs you later is which object in your schema is the tenant.
What is RBAC, and where it leaks in a B2B SaaS app
RBAC grants permissions to roles and roles to people. In a B2B app the role sits on the workspace membership, and the leaks are in the defaults, not the matrix.
Why a permission change no longer waits for the hourly refresh
RBAC permission propagation delay, from our code: role and grant changes land at the write, and the hourly refresh only catches writes that announce nothing.
Multi-tenant workspaces in Express, Hono and Fastify: one middleware that checks membership
Multi-tenant workspaces in Express, Hono and Fastify: take the workspace from the path, then refuse any user who is not a member, in one middleware.
Multi-tenant Remix: put the workspace in the URL, and check membership before any loader runs
Multi-tenant workspaces in Remix and React Router v7 or v8: the workspace lives in the URL, and one membership check runs before any loader can fetch.
Usage-based billing in React Router (Remix): meter in the action, never the loader
Usage-based billing in React Router (Remix): record usage in the action, not the loader, and key each form render so a retried submit bills once.
Usage metering middleware in Express: record before the handler or after the response (Hono and Fastify too)
Usage metering middleware for Express, Hono and Fastify: when to record before the handler, when to batch after the response, and the rate limit that decides it.
BuildBase on Astro: one middleware for sign-in, roles and API tokens
Astro middleware authentication with roles: one onRequest gate where admins and editors write, viewers read, strangers bounce and machines use a token.
BuildBase on Express: add authentication to an existing app and keep req.user
Add authentication to an existing Express app: hosted sign-in, a callback route, and express-session, with req.user and every protected route left untouched.
BuildBase on Fastify: authentication as a decorator plugin, tests included
Fastify authentication as a decorator plugin: hosted sign-in, @fastify/session, unchanged role checks, a fake for tests, and credits metered per request.
BuildBase on Hono: authentication and billing on Workers, Bun, Deno and Node
Hono authentication with no user table: hosted sign-in, a signed-cookie session you can still revoke, and metered credits, in one app on Node, Bun, Deno and Workers.