Describes a BAQ app project and the types it uses.
This file can be created and managed with the help of the BAQ CLI, but it can also be edited by hand when needed.
This file is always named baq.json.
{
"name": "Super App 3000",
"type": "ts-react",
"path": "src/baq",
"record_types": {...}
}
Projectname string
type enum
Project type. One of the following:
js: JavaScript project.js-react: JavaScript + React project.ts: TypeScript project.ts-react: TypeScript + React project.path string
description string optional
website_url URL optional
record_types : {[string]: RecordType}
Record types used by the app.
The keys will be the friendly names used when generating types.
RecordTypeUnion of LocalRecordType and RemoteRecordType.
LocalRecordTypeNew record type created for the app and available as a local file.
path string
record_id RecordId
version_hash VersionHash optional
content_hash string optional
Truncated SHA256 hash of the latest published type record.
Used to detect changes and publish a new version if needed.
RemoteRecordTypeExisting public record type published outside of the app.
entity Entity
record_id RecordId
version_hash VersionHash
This is what the full content of a BAQ project file might look like. Here we have an app that manages tasks (local record type), while also accessing the user’s files (remote record type).
{
"name": "Daily Todo",
"type": "ts-react",
"path": "src/baq",
"description": "Manage your daily tasks with ease.",
"website_url": "https://dailytodo.com",
"record_types": {
"task": {
"path": "src/types/record.task.json",
"record_id": "4ad29d48f55a409e8d25b0d03b23b6eb"
},
"file": {
"entity": "types.baq.run",
"record_id": "2b6f7bc8ffd54c8db8062700c040e04f",
"version_hash": "8f41675ff4f0165c2768b4b7f829df5768e8cd1d21e3cd0b3c9cd0fd73c7f151"
}
}
}