What problem does it solve? Building a custom Frappe app involves many moving parts—app scaffolding, hooks.py configuration, service layers, background jobs, caching, logging, and translations—and mistakes in any of these cause silent failures like hooks not firing or jobs never running. This Skill provides a structured, production-oriented procedure for creating and hardening Frappe apps correctly from the start. ## Core Features & Use Cases - App Scaffolding & Structure: Create apps with bench new-app and organize code using a domain architecture with thin DocType controllers, service modules, integrations, and utilities. - Hooks & Background Jobs: Configure hooks.py for doc_events, scheduler_events, and overrides, and enqueue long-running tasks with frappe.enqueue. - Cross-Cutting Utilities & Templates: Use the included mini-app-template with ready-made helpers for caching, error envelopes, logging, permissions, and validation, plus sample DocTypes, workflows, reports, and dashboards. - Use Case: You need to build a billing app that reacts to Sales Order submissions, syncs external data every six hours, and exposes a clean RPC API—this Skill walks you through scaffolding, hook wiring, service-layer design, and production hardening checklists. ## Quick Start Ask the assistant to scaffold a new Frappe app with a service layer, scheduled background job, and hooks configuration for your target Frappe version.