A project is a collection of assets used to collect input, validate and format that input, and present it as a PDF or image. This section is the reference for building one - if you just want to see the app work first, start with Quick Start instead.
Project Assets Processing Pipeline
Every project is built from some combination of these files, listed in the order they're actually used when you hit Generate.
| Asset Type (filename(s)) | Description | Documentation | Editor |
|---|---|---|---|
form.json |
Field definitions, validation rules, computed fields, autocomplete flags. Drives both the fill-out form and the first (static) validation pass. | form.json Reference |
Form Editor |
autocomplete.json |
Author-curated suggestion lists, keyed to a field's Autocomplete Key. Used while filling out the form, not at generation time. | Autocomplete JSON | Autocomplete Editor |
validate.js |
Cross-field validation beyond what form.json rules can express. Runs on submit, before layout assembly. |
validate.js Reference |
Script Editor |
process.js |
Assembles the final layout by calling overlay() on one or more partial JSON files; handles conditional/computed blocks. Runs on submit, after validate.js. |
process.js Reference |
Script Editor |
overlay.json |
Base layout partial - page config and backgrounds. Always present; loaded by process.js, or auto-loaded if process.js is absent. |
Layout JSON | Layout Editor |
logo.json |
Optional layout partial - branding blocks. | Layout JSON | Layout Editor |
form_fields.json |
Optional layout partial - blocks that place submitted field values on the page. | Layout JSON | Layout Editor |
base.pdf |
The page canvas - dimensions, page count, background art. Everything above is painted onto this at render time. | Document Project Structure | Create base.pdf |
assets/ |
Images, logos, background PDFs referenced by layout partials (relative paths). | Document Project Structure | Assets & Fonts |
fonts/ |
Optional per-project TTF/OTF fonts, matched by font_family in layout blocks. |
Document Project Structure | Assets & Fonts |
output/ |
Where generated PDFs/PNGs are written - the pipeline's destination, not an input. | Document Project Structure | not editable |
Building your own project
- Authoring Tools - document structure,
form.json, layout JSON, scripting, and the processing pipeline, in depth.
Every screen in the app
- UI Reference - a detailed page for every screen, in case something on-screen doesn't behave the way you expected.