Frappe Backend

Frappe backend guidance for Python and backend-adjacent JavaScript surfaces such as client interaction patterns, hooks, APIs, patches, scheduler logic, reports, and server-side review. Use when implementing or reviewing Frappe backend behavior.

thedixitjain cc63d7c 1.2 KB Updated 2 repo stars

File contents

Treat Frappe backend work as a Python-first system with important JavaScript touchpoints.

Cover:

  • controllers and document lifecycle methods
  • hooks
  • whitelisted methods
  • scheduler jobs and background work
  • patches and migrations
  • server scripts when they are the right layer
  • report backends
  • client-to-server API contracts

Principles:

  • prefer framework APIs over ad hoc patterns
  • keep imports clean and explicit
  • use permissions deliberately
  • separate document logic, service logic, and integration logic
  • avoid accidental public APIs

Before writing code, decide whether the request should instead be handled by:

  • Custom Field
  • Property Setter
  • Client Script
  • Server Script
  • Workflow
  • Report
  • Workspace

Source: hashgraph-online/awesome-codex-pluginsplugins/Dkm0315/frappe-agent/skills/frappe-backend/SKILL.md

thedixitjain/the-mega-skill-library/tree/main/library/backend-and-data/frappe-backend commit cc63d7ceac

Frequently asked questions

npx skillmds add thedixitjain/frappe-backend