Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

frappe-app

verified

Scaffold a new Frappe Framework v15 application with multi-layer architecture. Triggers: "create frappe app", "new frappe app", "scaffold frappe", "frappe app structure", "/frappe-app". Creates production-ready app structure with service layer, repository pattern, proper module organization, and v15 best practices.

View on GitHub

Marketplace

bershadsky-claude-tools

sergio-bershadsky/ai

Plugin

frappe-dev

development

Repository

sergio-bershadsky/ai
4stars

plugins/frappe-dev/skills/frappe-app/SKILL.md

Last Verified

February 2, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/sergio-bershadsky/ai/blob/main/plugins/frappe-dev/skills/frappe-app/SKILL.md -a claude-code --skill frappe-app

Installation paths:

Claude
.claude/skills/frappe-app/
Powered by add-skill CLI

Instructions

# Frappe App Scaffolding

Create a professional Frappe Framework v15 application with multi-layer architecture following enterprise best practices.

## When to Use

- Starting a new Frappe/ERPNext custom application
- Need production-ready app structure with proper separation of concerns
- Want multi-layer architecture (Controller → Service → Repository)
- Building apps that require clean, maintainable code organization

## Arguments

```
/frappe-app <app_name> [--module <module_name>]
```

**Examples:**
```
/frappe-app inventory_management
/frappe-app hr_extension --module Human Resources
```

## Procedure

### Step 1: Gather Requirements

Ask the user for:

1. **App name** (snake_case, e.g., `inventory_pro`)
2. **App title** (human-readable, e.g., "Inventory Pro")
3. **Primary module name** (e.g., "Inventory", "HR", "Sales")
4. **Brief description** of the app's purpose

Verify the current working directory is within a `frappe-bench/apps` folder:

```bash
pwd
ls -la
```

### Step 2: Generate App Structure

Create the following multi-layer architecture:

```
<app_name>/
├── <app_name>/
│   ├── __init__.py
│   ├── hooks.py                    # App hooks and integrations
│   ├── modules.txt                 # Module definitions
│   ├── patches.txt                 # Database migrations
│   ├── <module_name>/              # Primary module
│   │   ├── __init__.py
│   │   ├── doctype/               # DocType definitions
│   │   │   └── __init__.py
│   │   ├── api/                   # REST API endpoints (v2)
│   │   │   └── __init__.py
│   │   ├── services/              # Business logic layer
│   │   │   └── __init__.py
│   │   ├── repositories/          # Data access layer
│   │   │   └── __init__.py
│   │   └── report/                # Custom reports
│   │       └── __init__.py
│   ├── public/
│   │   ├── css/
│   │   └── js/
│   ├── templates/
│   │   ├── includes/
│   │   └── pages/
│   ├── www/                       # Portal pages
│   └── tests/
│       ├── __init__.p

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
12727 chars