- The
zapier/zapier-platformrepository is structured as a monorepo, where separate but related code lives together.
- The root folder mostly holds tooling scripts, tooling configuration, examples, and documentation for the platform as a whole.
- The
schema-to-tsfolder contains a custom package that generates TypeScript declarations forzapier-platform-corebased on thezapier-platform-schema's generatedexported-schema.jsonfile. These generated type declarations are bundled intozapier-platform-coreand shipped to end-users as part of that NPM package. Type declarations are configured to be generated via thegenerate-typesNPM script, which runs automatically as part of ahuskyprecommit hook.
- The
- The individual packages are found in the
packagesdirectory. Each has its ownARCHITECTURE.mdfile outlining the code for that specific package. - The
boilerplatedirectory holds a "bare minimum" app that we include with eachzapier-platform-coreversion (AKA Platform Version). We use this in combination with the Visual Builder to ship apps that that skip the build step.