{"repo":"contractual-dev/contractual","free":true,"listed":false,"github":"https://github.com/contractual-dev/contractual","clone":"git clone https://github.com/contractual-dev/contractual.git","description":"Schema contract lifecycle CLI and GitHub Action for OpenAPI and JSON Schema","language":"TypeScript","stars":38,"topics":["contract","contracts","json-schema","openapi","openapi3","rest","rest-api","schema","spec","validations"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"Contractual Contractual is a tool for managing API and data schemas as structured contracts. It ensures that schemas are defined, versioned, and enforced across teams, whether for REST APIs, event-driven systems, or structured data exchanges. Common use cases include: \\ 🔹 Keeping API Contracts in Sync Between Backend and Frontend \\ 🔹 Generating Type-Safe Clients and Server Contracts \\ 🔹 Preventing Breaking Changes and Detecting Schema Drift \\ 🔹 Ensuring Consistency Between Backend and Data Teams \\ 🔹 Generating Language-Specific Types from a Shared Contract By treating schemas as first-class entities, Contractual eliminates uncertainty at integration points, enabling backend, frontend, and data engineering teams to maintain predictable and enforceable APIs and structured data across the entire stack. Initially built for the Node.js and TypeScript ecosystem , Contractual is planned to support additional languages. 🚀 In Practice Install Contractual To get started, install the Contractual CLI globally: Initialize Your Project Run the init command to scaffold a new project: This command creates the following project structure: Contractual works seamlessly with monorepos , monoliths , and distributed repositories. Define Your API Write your API definition in the api.tsp file. For example: You can experiment and validate your API definitions using the TypeSpec playground Manage API Changes Save the Current State of Your API Run the spec graduate command to save the current sta","default_branch":null,"files":null,"tree":[],"storefront":"/r/contractual-dev","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/contractual-dev/contractual/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}