frappe-syntax-customapp

Document Frappe custom app scaffolding with pyproject.toml and bench for v14–v16.

163|53|Updated Jan 14, 2026
One-click install
npx skills add https://github.com/OpenAEC-Foundation/Frappe_Claude_Skill_Package --skill frappe-syntax-customapp
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: frappe-syntax-customapp
Source: https://github.com/OpenAEC-Foundation/Frappe_Claude_Skill_Package/tree/main/skills/source/syntax/frappe-syntax-customapp
Command: npx skills add https://github.com/OpenAEC-Foundation/Frappe_Claude_Skill_Package --skill frappe-syntax-customapp

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Building Frappe custom apps from scratch is error-prone without a clear blueprint. This guide helps teams avoid common pitfalls in app scaffolding and module organization by consolidating structure, configuration, and best practices for v14–v16.

Core Features & Use Cases

  • Covers app structure, pyproject.toml configuration, module creation, patches, and fixtures.
  • Supports v14/v15/v16 compatibility and demonstrates how to scaffold, organize modules, and apply migrations with patches and fixtures.
  • Use Case: When starting a new custom app, follow this syntax to ensure a clean, maintainable baseline that passes production checks.

Quick Start

Create a new Frappe custom app with bench new-app and initialize its module structure according to v14–v16 guidelines.

Frequently Asked Questions about frappe-syntax-customapp

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scaffold a new Frappe custom app with the correct module structure?

To scaffold a Frappe custom app, use the bench new-app command and initialize its module structure according to v14–v16 guidelines. This ensures a clean, maintainable baseline that passes production checks by enforcing modular organization and proper configuration.

What is the best way to configure pyproject.toml for a Frappe custom app?

Configuring pyproject.toml for a Frappe custom app involves specifying dependencies on Python tooling and bench. This syntax provides best-practice scaffolding that enforces modular organization and compatibility checks across v14, v15, and v16.

How do I apply patches and fixtures when migrating a Frappe app from v14 to v16?

Applying patches and fixtures during a v14 to v16 migration requires following consolidated best-practice scaffolding for module organization. This guide demonstrates how to properly scaffold, organize modules, and apply migrations to maintain compatibility.

Does this Frappe scaffolding guide support version compatibility checks for v14, v15, and v16?

Yes, this Frappe scaffolding guide supports v14, v15, and v16 compatibility. It enforces modular organization and compatibility checks to help teams avoid common pitfalls when building new apps or migrating across these framework versions.

Why do I need a specific blueprint for Frappe custom app development?

Building Frappe custom apps from scratch is error-prone without a clear blueprint. Consolidating app structure, configuration, patches, and fixtures into a documented syntax prevents common scaffolding pitfalls and ensures a maintainable production baseline.

What are the limitations of scaffolding a Frappe app without following module organization best practices?

Scaffolding a Frappe app without best practices leads to error-prone structures that fail production checks. Skipping modular organization and pyproject.toml configuration compromises maintainability and breaks v14–v16 compatibility during migrations.