yap.json
YAP (Yet Another Packager) multi-package project file
yap.json
Validate
Check your file against this schema
Opens the validator with this schema already loaded. Paste your
yap.json and it validates in your browser — nothing is uploaded.
Reference
Fields
Generated directly from the schema, following local
$refs, to two levels of nesting.
| Field | Type | Description |
|---|---|---|
$schema | string | Optional reference to this JSON Schema for editor validation/autocomplete. |
namerequired | string | Logical name of the project collection. |
descriptionrequired | string | Human-readable description of the project collection. |
buildDirrequired | string | Directory where build artifacts and intermediate files are produced. |
outputrequired | string | Directory where the final packages are written. |
projectsrequired | array<object> | Ordered list of sub-projects (each containing a PKGBUILD) to build. |
compressionDeb | string | Compression algorithm for .deb artifacts. one of: "zstd", "gzip", "xz" |
compressionRpm | string | Compression algorithm for .rpm artifacts. one of: "zstd", "gzip", "xz" |
signing | object | Package signing configuration. Note: keys are PascalCase (the struct has no JSON tags). Key/passphrase resolution can also be driven by CLI flags and environment variables; see docs. |
signing.Enabled | boolean | Whether signing is active for this build. default: false |
signing.KeyPath | string | Absolute path to the private key (PEM for RSA/APK, ASCII-armored for GPG/DEB/RPM/Pacman). |
signing.Passphrase | string | Passphrase for the private key. Prefer environment variables over committing this. |
signing.KeyName | string | Optional key name, used for APK key naming (e.g. "mykey"). |
repos | array<object> | Additional package repositories to configure before resolving build/runtime dependencies. |
skipDeps | array<string> | Package names to omit from makedepends installation. |
targetArch | string | Cross-compilation target architecture (e.g. "arm64", "aarch64"). Empty means native host arch. |
debugDir | string | Directory to capture per-step build debug artifacts. |
parallel | boolean | Build independent projects in parallel. Default is sequential (file order). default: false |
sbom | boolean | Generate Software Bill of Materials for each artifact. default: false |
sbomFormat | string | SBOM format(s) to emit when sbom is enabled. default: "both"one of: "cyclonedx", "spdx", "both" |
Audit
What we found in this schema
- Declared draft: draft-07
- Validates cleanly against its own meta-schema.
- 31 properties, 100% carrying a description, max nesting depth 7.
Standards
Specification sections for the keywords in this schema
| Keyword | Document | Section |
|---|---|---|
$id | JSON Schema Core, draft 2020-12 | §8.2.1 — The "$id" Keyword |
$schema | JSON Schema Core, draft 2020-12 | §8.1.1 — "$schema" |
additionalProperties | JSON Schema Core, draft 2020-12 | §10.3.2.3 — "additionalProperties" |
default | JSON Schema Validation, draft 2020-12 | §9.2 — "default" |
description | JSON Schema Validation, draft 2020-12 | §9.1 — "title" and "description" |
enum | JSON Schema Validation, draft 2020-12 | §6.1.2 — "enum" |
format | JSON Schema Validation, draft 2020-12 | §7 — Vocabularies for Semantic Content With "format" |
items | JSON Schema Core, draft 2020-12 | §10.3.1.2 — "items" |
minItems | JSON Schema Validation, draft 2020-12 | §6.4.2 — "minItems" |
minLength | JSON Schema Validation, draft 2020-12 | §6.3.2 — "minLength" |
pattern | JSON Schema Validation, draft 2020-12 | §6.3.3 — "pattern" |
properties | JSON Schema Core, draft 2020-12 | §10.3.2.1 — "properties" |
required | JSON Schema Validation, draft 2020-12 | §6.5.3 — "required" |
type | JSON Schema Validation, draft 2020-12 | §6.1.1 — "type" |
Documents
- JSON Schema Core, draft 2020-12 — JSON Schema: A Media Type for Describing JSON Documents, A. Wright, H. Andrews, B. Hutton, G. Dennis, Eds., 2022. draft-bhutton-json-schema-01. An expired Internet-Draft with no formal standing in the IETF standards process; it is nonetheless the specification of record for JSON Schema 2020-12, published by json-schema.org.
- JSON Schema Validation, draft 2020-12 — JSON Schema Validation: A Vocabulary for Structural Validation of JSON, A. Wright, H. Andrews, B. Hutton, Eds., 2022.
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The format a schema describes.
- RFC 6901 — JavaScript Object Notation (JSON) Pointer. Defines the pointer syntax used by $ref fragments and the ~0 / ~1 escapes.
Source
Attribution
This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.