Skip to content

meshql-access (@meshql/access)

Entity, row, and field-level access control for MeshQL.

Terminal window
npm install meshql-access meshql-core
# or
npx jsr add @meshql/access @meshql/core

Published on npm as meshql-access and JSR as @meshql/access.

import { createMesh } from "meshql-core";
import { accessPlugin } from "meshql-access";
const mesh = createMesh({ entities: { /* … */ } });
mesh.use(accessPlugin({
canReadEntity: (ctx, entity) => ctx.role === "admin" || entity === "post",
canReadField: (ctx, entity, field) => field !== "email" || ctx.userId === ctx.targetUserId,
}));

JSR imports: @meshql/core, @meshql/access.

Pair with meshql-integrity for signed requests and session context.