Skip to content

Glossary

One meaning for each word. Other pages link here the first time they use one.

Word Meaning
contract The YAML files that describe your API. It starts at api.yaml.
api One API in a contract: its name, its version, its schemas and its routes. apis: [notes] in a target entry names it. Not the backend server.
source Where the config finds a contract: sources.notes with a path, a package or a git tag. The source name is not the api name.
surface An entry point of an api with a path prefix, such as the surface named app under /v1. Its routes and its access rule live under it. See the shape of a contract.
collection A route of kind: collection: a list of records with an id, and the standard operations on them (list, get, create, update, delete).
target One kind of output, such as the types, the NestJS server or the fetch client. You add it as an entry in targets:.
entry One item of the targets: list in seampact.config.yaml, with an id, a use, apis and optional link and options.
generator The package an entry names in use, such as @seampact/codegen-nestjs. It writes the code. See the package map.
link A link in an entry names the other entries it builds on, for example types: types. See targets and links.
handler The code you write for one operation. seampact generates the interface and calls your handler. It is a controller method on NestJS, Spring Boot, Laravel and Symfony, a function or method on Express, Fastify, Hono, AdonisJS and FastAPI, and a view method on Django.
hook Code you give the generated server: authenticate, decide or resolve a scope. It is an object on Node, an interface implementation on Spring Boot, a class on Laravel and Symfony, and a function or class on Python. The app refuses to start while one is missing.
boundary The generated code that checks each request and each reply against the contract.
bundle A packed, versioned copy of a contract that other repositories pin and reuse. seampact bundle makes it. See sharing contracts.
app One project with its own seampact.config.yaml: a backend, a frontend or a service.
workspace root The folder of a contract’s entry file: workspace.yaml, or the api file when a contract has one api and no workspace.yaml. Contract paths stay inside it.
monorepo root In a monorepo, the folder whose seampact.config.yaml lists the apps with apps:. See monorepo.
IR The compiled form of a contract, which every generator reads. You never write it.
refusal code The code a target prints when it cannot generate a form yet, such as input.form.unsupported. generate stops. See troubleshooting.
rule id The name of a lint rule, such as seampact/credential-name. lint prints it with the finding. See lint.

Next: Install.