Skip to main content

Introduction

ZenStack is a Node.js/TypeScript toolkit that simplifies the development of a web app's backend. It supercharges Prisma ORM with a powerful access control layer and unleashes its full potential for full-stack development. We created it with the belief that developers can build better applications by:

  • Keeping a single source of truth for core business logic
  • Being more declarative
  • Writing less code

To achieve these goals, ZenStack progressively enhances Prisma at multiple levels:

    🛠️ An extended schema language that supports custom attributes

    🔐 Access policies and data validation rules

    🚀 Automatic CRUD APIs - RESTful, tRPC

    🤖 Generating client-side data access libraries (aka hooks) - SWR, TanStack Query

    🧩 A plugin system for great extensibility

In the following sections, we'll guide you through understanding each layer of the extensions, and you'll see how ZenStack can help you build a full-stack web app much faster.