All Collections

Exploring an app

Once you are inside a branch workspace, these commands help you understand the app without opening Bubble: summary, tree, context, schema, docs, guidelines, data, test-user, and login.

Top-level surfaces

buildprint summary
buildprint summary --json

summary lists pages, mobile views, reusable elements, global elements, data types, option sets, styles, and API Connector calls. Each entry includes the display name, id when available, and workspace file path.

Start here when you do not know the app structure yet.

Element trees

buildprint tree home
buildprint tree home --include text,types,ids,paths
buildprint tree home --depth 2
buildprint tree home --cursor 250

Targets can be page/reusable/mobile names, folder keys, or element ids. The default include set is types,ids,layout.

Useful flags:

  • --include <list> accepts text, types, ids, paths, layout, design, properties, workflows, and actions. actions implies workflows.

  • --depth <n> limits output depth from the target. 0 prints only the target.

  • --cursor <n> paginates output. Tree pages are 250 lines.

Context for one node

buildprint context page-home
buildprint context pages/home/elements/button/element.json
buildprint context wf-submit

context accepts a workspace JSON path, exact node id, exact app-json map key or logical path, or exact name. It prints containment, workflow trigger relationships, references, and reusable instantiation relationships.

If a target is ambiguous, the command prints candidates so you can retry with a file path or more exact id.

buildprint schema "append text"
buildprint schema --category actions
buildprint schema "count" --category operators --upstream-type list
buildprint schema --element-type Group --surface web_page
buildprint schema "api connector" --json

schema searches Buildprint's static Bubble schema. Provide a query, at least one --category, or a context filter such as --element-type.

Useful filters include --upstream-type, --element-type, --action-type, --workflow-type, --data-type, --owner-type, and --surface. --limit accepts 1 to 20 results.

Documentation and guidelines

buildprint docs buildprint "auth token"
buildprint docs buildprint "version syncing" --limit 10
buildprint docs bubble
buildprint guidelines list
buildprint guidelines get general
buildprint guidelines get editing/apps schema/workflow

docs buildprint searches Buildprint docs. docs bubble returns Bubble's llms.txt payload and curl guidance. guidelines exposes Buildprint's local agent guidelines for editing app files, workflows, schema, and tests.

Runtime data reads

data reads Bubble database records through Buildprint. It does not read local workspace files.

Inside a workspace, app and version default to the workspace app and current branch. Outside a workspace, pass both --app <appId> and --version <live|test|branch>.

buildprint data search '{"type":"custom.project","constraints":[{"key":"_all","constraint_type":"contains_all_fields","value":"acme"}],"n":5}'
buildprint data fetch '["1670000000000x1234567890"]'
buildprint data aggregate '[{"type":"custom.project","constraints":[],"aggregate":{"fns":[{"fn":"count"}]}}]'

For larger payloads, use --file <path> or --stdin. Add --json for compact machine-readable output. data search accepts up to 400 results per request.

Test users

Test users are Buildprint-managed records for the current workspace app:

buildprint test-user list
buildprint test-user get t17...
buildprint test-user create --name "Test customer" --database test --email [email protected]
buildprint test-user update t17... --database test --disable
buildprint test-user delete t17...

Most subcommands support --json. Passwords can be passed with --password, read from stdin with --password-stdin, or cleared with --clear-password on update.

Run-as-user browser login

buildprint login [email protected]
buildprint login [email protected] --page checkout
buildprint login [email protected] --session checkout-test
buildprint login [email protected] --no-browser

login asks Buildprint for run-as-user cookies and installs them into Agent Browser when available. Use it before browser-based testing as a specific Bubble user.

Was this helpful?