SvelteSaaS

data-contract — Svelte SaaS Template

By AgileDataGuides

A data contract editor built with Svelte for defining schemas, trust rules, SLAs, ownership, and lineage for datasets, with export to ODCS, OpenMetadata, JSON, RTF, Word, PDF, and other formats.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-02View source

What stands out

A quick read of the recorded project description.

01

Define data contracts through a card-based interface covering schema, trust rules, data synchronization, team, glossary, delivery, and lineage sections

02

Trust rules are categorized by completeness, uniqueness, accuracy, freshness, validity, security, and governance; they can be bound to specific columns and store rule expressions as free text

03

Supports multiple export formats: JSON, ODCS YAML (Bitol v3.0.2), OpenMetadata Standards JSON, RTF, Word, and PDF

04

Import automatically recognizes native JSON, ODCS YAML, OpenMetadata, and Context Plane graph formats

05

Supports creating, switching between, and deleting multiple contracts, with changes automatically saved to browser localStorage

06

In development mode, contract JSON can be written to the data/ directory for direct reading by external tools such as Claude Code

Template Details

This is a data contract editing tool for data producers and consumers that turns the agreement between both parties about a dataset into a machine-readable document. Contracts cover the data asset itself, column-level schema (data types, PII/public/confidential classification, nullability, primary keys), trust rules (completeness, uniqueness, accuracy, freshness, validity, security, and more), service-level commitments for data synchronization (refresh frequency, latency, availability, retention period), team roles and contact details, personas that depend on the contract, business glossary, delivery and infrastructure, and upstream lineage aligned with PROV-O.

The interface uses a click-to-select-card, click-again-to-edit-in-place interaction. It supports creating, switching between, and deleting multiple contracts, and changes are automatically saved to browser localStorage. Export formats include native JSON, ODCS YAML (Bitol v3.0.2), OpenMetadata Standards JSON, RTF, Word, and PDF; import automatically recognizes native JSON, ODCS YAML, OpenMetadata, or Context Plane graph formats. In development mode, Save writes JSON to the data/ directory so tools such as Claude Code can read it directly.

The repository describes itself as an ALPHA initial stub version. The author released it to collaborate with a small number of people to determine what the app should look and behave like, so features and data structures may still change. The app is explicitly designed to run locally, has no user authentication, and anyone who can access the service can read and overwrite data, so it should not be deployed to the public internet or a public server. The online demo runs entirely in the browser, stores data in localStorage, and includes three example contracts using Stripe Customers, Subscriptions, and Invoices that reference each other via foreign keys.

SvelteSaaS

Is it right for your project?

Use Cases

  • Write an explicit data contract between producers and consumers for a dataset
  • Record schema constraints such as PII, nullability, and primary keys using column-level classification and trust rules
  • Declare service-level commitments such as refresh frequency, latency, availability, and retention period for a data pipeline
  • Export in ODCS or OpenMetadata format to integrate with external data catalogs or governance tools
  • Demonstrate foreign key references across datasets using example contracts such as Stripe customers, subscriptions, and invoices

Suitable For

  • Data engineering and governance teams that need to establish written contracts for data assets
  • Data platform staff who want to unify schemas, quality expectations, and SLA agreements in a machine-readable format
  • Organizations that need to export contracts as ODCS or OpenMetadata to connect to existing catalog tools
  • Individual developers working with contract JSON in a local environment alongside tools such as Claude Code

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Requires Node.js v18+ and pnpm (can be installed with npm install -g pnpm)

  2. 2

    Run ./start-data-contract.sh in the terminal; the app starts at http://localhost:5119 by default

  3. 3

    Save writing to the data/ directory is only available in development mode (pnpm dev), because it requires the server to have disk write access

  4. 4

    The app has no user authentication and is only suitable for running locally; do not expose it to the internet or deploy it to a public server

  5. 5

    Third-party assets such as demo images, fonts, and icons must be checked separately under their respective licenses; the code's MIT license does not cover them

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of that version and does not mean external services or third-party assets are free.

Must comply with when using

  • You may use, modify, commercialize, and distribute the code of this version for free.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the complete MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The app is designed only to run locally on your machine; exposing it to the internet or deploying it to a public server is explicitly prohibited.
  • The app has no user authentication mechanism, and anyone who can access the service can read and overwrite your data, so it is not suitable for multi-user or networked shared use.
  • The Save function that writes to the data/ directory is only available in development mode (pnpm dev) and requires the server to have disk write access; it is unavailable under other run modes.
  • The project describes itself as an ALPHA initial stub version, released only to collaborate with a small number of people to determine the app's form; features and data structures may change, and it is not suitable for production use.
  • The documentation uses the CC BY-SA 4.0 license, which differs from the code's MIT license; when using the documentation, you must comply with its attribution and share-alike requirements.
  • Demo images, fonts, icons, and other third-party assets must be checked under their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

This app is designed to run locally on your own machine. Do not expose it to the internet or deploy it on a public server.

Original README

There is no user authentication, so anyone who can reach the server can read and overwrite your data.

Original README

This only works in dev mode (`pnpm dev`) where the server can write to disk.

Original README

This is the initial stubs version of the app, publishing it so I can collaborate with a few people on what the Data Contract app should actually look and behave like.

Original README

**Documentation**: CC BY-SA 4.0

Original README
https://github.com/AgileDataGuides/data-contract/blob/main/LICENSEhttps://github.com/AgileDataGuides/data-contract/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-02. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 80 / 100
Technologies
Svelte
Website type
SaaS
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-09-30
Screenshot last checked
2026-10-02

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Svelte as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 0dee971dac7336dedee38786014003f85bd7e82050c6a6ff4c8c2fd6db5a19e2

2026-10-02T10:34:23.105Z

Source file / repository
# Data Contract

Define data contracts for your data assets — the agreement between the team that produces a dataset and the teams that consume it. Captures schema, quality expectations, freshness commitments, ownership, lineage, and the business glossary terms that anchor the contract in your domain language.

An [AgileDataGuides](https://agiledataguides.com/agiledata-templates/) Pattern Template app.

## ALPHA VERSION

This is the initial stubs version of the app, publishing it so I can collaborate with a few people on what the Data Contract app should actually look and behave like.


## What It Does

A Data Contract is an explicit, machine-readable agreement covering everything a consumer needs to depend on a dataset:

| Section | Purpose |
|---------|---------|
| **Data Asset** | The single dataset the contract governs |
| **Schema / Columns** | Every column with its data type, classification (PII / public / confidential), nullability, and primary-key status |
| **Trust Rules** | Data-quality expectations the producer commits to enforce — completeness, uniqueness, accuracy, freshness, validity, security |
| **Data Sync** | Service-level commitments — refresh frequency, latency, uptime, retention |
| **Team** | Producers (owner), stewards, and consumers — with role-tagged contact info |
| **Personas** | The roles who depend on this contract (e.g. CRO, CFO, Finance Analyst) |
| **Glossary Terms** | Business glossary terms anchored to the contract — keeps language consistent across domains |
| **Delivery / Infrastructure** | How the data is delivered — Snowflake, Kafka, REST API, dbt, … |
| **Lineage** | PROV-O aligned upstream sources (source systems, ingestion jobs, transformation steps) |
| **Status / Domain / Information Product / Tags** | Metadata tying the contract into the wider organisation |

## Try It Online

**[Launch the Live Demo](https://agiledataguides.github.io/data-contract)** — no install required. The demo runs entirely in your browser. Your data is saved in localStorage and never leaves your device.

The demo includes three example contracts modelling the **Stripe Customers**, **Stripe Subscriptions**, and **Stripe Invoices** APIs — the SaaS revenue funnel from customer master through MRR/ARR to recognised revenue. They thread together via foreign keys so you can see how contracts cross-reference each other in a real dataset stack.

## Install and Run

Run `./start-data-contract.sh` from the terminal.

The app starts at [http://localhost:5119](http://localhost:5119).

**Requires**: [Node.js](https://nodejs.org/) (v18+) and [pnpm](https://pnpm.io/) (`npm install -g pnpm`).

## Features

- **Tier 1–3 toolbar** — App switcher, contract metadata + actions, tab navigation
- **Click-to-select cards** — click a card to view, click again to inline-edit
- **Trust Rules** — categorise rules (Completeness, Uniqueness, Accuracy, Freshness, Validity, Security, Governance), pin to a column, store the rule expression as free text
- **Data Sync** — typed properties (`frequency`, `latency`, `uptime`, `retention`) with units
- **Lineage** — PROV-O-aligned items with provType (`entity` / `activity` / `agent`) and upstream relationships
- **Manage Pattern Types** — per-contract customisation of the lookup catalogues that drive the toolbar chips (Status / Change Detection / History Window). Toggle patterns off, trash them, edit values, export/import per pattern or all
- **Multiple export formats** — JSON (native), ODCS YAML (Bitol v3.0.2), OpenMetadata Standards JSON, RTF, Word, PDF
- **Import** — auto-detects native JSON, ODCS YAML, OpenMetadata, or Context Plane graph format
- **Multiple contracts** — create, switch between, and delete contracts
- **Auto-save** — changes persist to browser localStorage automatically
- **Save to disk** — writes JSON to `data/` for direct access by Claude or other tools

## Works With Claude

Export your contract as JSON / ODCS / OpenMetadata and use it with [Claude Code](https://claude.ai/claude-code) or [Claude Chat](https://claude.ai):

- *"What columns in this contract are missing trust rules?"*
- *"Generate a dbt source.yml from this contract's columns."*
- *"Are any of my contracts missing a freshness trust rule?"*
- *"Suggest additional trust rules based on the column data types."*
- *"Convert this Stripe contract to an OpenMetadata table definition."*

## Languages

The Data Contract app speaks multiple data contract dialects via its Language Framework:

- **Bitol / ODCS v3.0.2** — Open Data Contract Standard (YAML)
- **OpenMetadata Standards** — OMS table + quality + SLA definitions (JSON)
- **Context Plane** — native graph format for round-tripping with the wider Context Plane app

Languages are pure translation modules — your contract data stays in the AgileData-native model on disk; export/import re-emits it in the chosen dialect on demand.

## Data Storage

**Save** writes contract files to the `data/` folder as JSON. This only works in dev mode (`pnpm dev`) where the server can write to disk. Claude Code can then read these files directly.

**Export** downloads files to your browser's downloads folder for sharing or backup.

**Auto-save** persists the current state to browser localStorage automatically.

## Security

This app is designed to run locally on your own machine. Do not expose it to the internet or deploy it on a public server. The Save feature writes files directly to your filesystem. There is no user authentication, so anyone who can reach the server can read and overwrite your data.

If you need to share your work, use the **Export** buttons to download files and share them manually.

## Tech Stack

- [SvelteKit 5](https://svelte.dev/) with Svelte 5 runes
- [Tailwind CSS 4](https://tailwindcss.com/)
- TypeScript
- pnpm

## Licensing

- **Code**: [MIT](../LICENSE)
- **Documentation**: CC BY-SA 4.0
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.

CMSaasStarter

CMSaasStarter

CMSaasStarter is an MIT-licensed SaaS starter template built with SvelteKit, TailwindCSS, DaisyUI, and Supabase, with Stripe Checkout and Stripe Portal for payments.

Svelte · Admin dashboard

modernstack-saas

modernstack-saas

A SaaS starter template built with SvelteKit, Convex, Better Auth, and shadcn-svelte. It includes subscription billing via Autumn/Stripe, user and admin dashboards, user settings, organization multi-tenancy with roles and invitations, and a waitlist mode that can disable public registration.

Svelte · Admin dashboard

alchemist-template

alchemist-template

An MIT-licensed SaaS starter template on Deno 2, Hono 4, Svelte 5, and PostgreSQL, with email OTP, OAuth, RBAC, Stripe billing, a Postgres event bus and email outbox, and a CLAUDE.md for AI agents.

Svelte · SaaS

sveltekit-saas-starter

sveltekit-saas-starter

A SvelteKit SaaS starter template derived from a production implementation, featuring Supabase Auth and Postgres, Stripe subscriptions and one-time purchases, entitlement checks, an admin dashboard, and secure digital download delivery.

Svelte · SaaS

tstack

tstack

tstack is a SvelteKit SaaS starter template with Better Auth email/password authentication, organizations and multi-tenancy, transactional email via Resend, sharp-processed WebP uploads, a Tailwind 4 + daisyUI 5 component library, and a URL-state CRUD task list example.

Svelte · SaaS

react-starter-kit

react-starter-kit

A full-stack SaaS monorepo starter built on Vite and React, with Bun, TypeScript, tRPC, Drizzle ORM, Better Auth, Stripe, and Cloudflare Workers. It includes email OTP, passkey, Google OAuth, organizations, subscription billing, Drizzle migrations, seed scripts, and Terraform infrastructure.

Vite · SaaS