Skip to content

jamiedavenport/policystack

Repository files navigation

PolicyStack

PolicyStack

Open-source, AI-first primitives for adding privacy policies and consent to your app. One typed config drives your privacy policy, your cookie policy, and the consent that gates the cookies they describe — all rendered directly into your React/Vue/Svelte/Solid/Angular app, never a third-party iframe.

Three building blocks

  • Policy — your privacy and cookie policy as a typed config, rendered as components or Markdown. A Vite plugin compiles it at build time and scans for undeclared third parties.
  • Consent — a headless consent state machine. Sub-4kb core, adapters for React, Vue, Solid, Svelte, and Angular, and a Vite plugin that fails the build on an ungated cookie. No bundled UI — you build the banner with your own components.
  • Cloud — an optional hosted control plane for versioning, audit trails, and consent analytics. It sits on top of the OSS pieces; you never need it to use them.

Everything except Cloud is Apache-2.0.

Quick start

bunx @policystack/cli init

init installs the right packages for your stack, writes a starter policystack.ts, and prints a prompt you can hand to a coding agent. See the quick start for the full walkthrough.

Packages

All packages publish under the @policystack/* scope and version together.

Package What it is
@policystack/sdk Public API — defineConfig(), renderLlmsTxt()
@policystack/core Compilation engine + consent runtime (./consent subpath)
@policystack/vite Vite plugin + opt-in consent scanner
@policystack/cli Install / configure / validate CLI
@policystack/renderers Shared Markdown / HTML / PDF render layer
@policystack/scripts Consent-gated third-party script loaders
@policystack/react React adapters — ./policy, ./consent, ./provider
@policystack/vue Vue adapters — ./policy, ./consent
@policystack/svelte Svelte adapters — ./policy, ./consent
@policystack/solid Solid adapter — ./consent
@policystack/angular Angular adapter — ./consent

Contributing

See CONTRIBUTING.md for setup, the monorepo layout, and the release flow. Apache-2.0 — issues and PRs welcome.

Not legal advice. PolicyStack generates policy documents from your config. It does not provide legal advice. Have a lawyer review your policies before publication. See the legal notice.

Contributors

Jamie Davenport
Jamie Davenport

💻
James
James

💻
Vish
Vish

💻
Kamil Doroszewicz
Kamil Doroszewicz

💻

Stargazers

RepoStars

About

AI-first primitives for adding consent and policies to your apps

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Sponsor this project

 

Contributors