frappe-builder

Installation
SKILL.md

Frappe Builder

A Builder site is a set of documents: Builder Page (a block tree in blocks = live and draft_blocks = draft), Builder Component (a block tree pages embed as instances), Builder Token (colour and font variables), Builder Client Script (page JS/CSS files) and Builder Settings (home page, site-wide code). Manage them with frappectl, and edit trees with scripts/builder.py in this skill's directory.

1. Connect

Start each session with python3 <skill-dir>/scripts/builder.py connect <site URL or profile> [--bench <bench dir>] and pass the profile it prints as -s <p>. It installs frappectl if needed, updates this skill (read this file again if it says so), signs in through the human's browser when the site has no profile (they click Allow), and warns when the site's Builder is too old. With --bench it also pulls a local bench's Frappe and Builder when they sit untouched on develop. The user needs the Website Manager role; creating a DocType (for forms) needs System Manager.

No site yet? Local setups run Frappe and Builder on develop; the frappe-app-dev skill (npx skills add frappe/skills --skill frappe-app-dev) covers bench basics. bench find ~ lists existing benches: if one runs Frappe 16 or later, ask the human whether to reuse it, which skips the slow bench init.

bench init --frappe-branch develop frappe-bench && cd frappe-bench   # new bench only
bench get-app builder --branch develop                               # if apps/builder is missing
bench new-site <name>.localhost --admin-password admin --install-app builder
bench start   # not `bench serve` alone: publishing queues jobs that need its worker

Then connect http://<name>.localhost:8000 --bench <bench dir>; the human logs in as Administrator / admin before allowing. If sites/common_site_config.json sets default_site, bench serves only that site to every host; bench use <name>.localhost switches it.

Installs
14
Repository
frappe/builder
GitHub Stars
2.4K
First Seen
9 days ago