Skip to content

Overview

You build backends — Node.js/Express, Postgres, Redis, Docker. Now you need to deliver and operate a real ERP on ERPNext v16+ and the Frappe Framework, and you want to do it the way an experienced engineer would: understand the architecture, write clean server code, and run it in production. This guide is built for exactly that.

It teaches Frappe the way you already think — mapping each concept to its Node.js equivalent (“in Express you’d write a route handler; in Frappe you whitelist a Python method”) — and it is relentlessly example-driven. Everything is themed around one running business:

ScoopJoy — a franchise-based ice-cream and food chain in India: multiple outlets, a central kitchen, 50+ staff, POS at every counter, GST accounting, and a React/Node storefront talking to ERPNext over its REST API.

  • You write backends professionally (Node.js background assumed, but any backend experience transfers).
  • You know SQL, Redis, Docker, and HTTP APIs.
  • You have little or no Frappe/Python-framework experience.
  • You want to build, customize, and operate ERPNext at production scale.

Two companion tracks, one guide:

  • The Guide — a progressive, 35-chapter path across 7 parts: architecture → Frappe core → ERPNext modules → customization → integrations → deployment → advanced engineering. Read it front to back.
  • The Cookbook — 56 self-contained, production-ready recipes (Problem → Solution → Why → Common mistake). Jump to whichever one matches the problem in front of you.
Component Version Role
Frappe / ERPNext v16+ The framework + the ERP app
Python 3.14+ Server logic, ORM, controllers, API
Node.js 24 LTS Asset bundling, Socket.IO realtime server
MariaDB 10.6+ Primary database (Postgres 14+ also supported)
Redis 8+ Cache, job queues, real-time pub/sub
Nginx + Gunicorn latest Reverse proxy + WSGI app server (production)
bench latest The Frappe CLI for sites, apps, and ops
Chapter What it covers
Architecture Overview How Frappe and ERPNext fit together; the site-bench-app model
Development Environment Installing the stack with bench or Docker
The Bench CLI Day-to-day commands for sites, apps, and migrations
Chapter What it covers
DocTypes — Data Modeling The metadata model that generates tables, APIs, and forms
Python Controllers Server-side business logic and the document lifecycle
Hooks & App Lifecycle hooks.py, event binding, and overrides
Client-Side Framework Form scripts and the Desk JavaScript API
REST API, RPC & Real-Time Auto-generated APIs, whitelisted methods, Socket.IO
Permissions & Security Roles, permission rules, and data security
Chapter What it covers
Accounting & Finance Chart of accounts, GL entries, GST, invoicing
Stock & Inventory Warehouses, batches, valuation, reorder levels
Selling, CRM & POS Sales orders, leads, loyalty, point of sale
Buying & Procurement Suppliers, purchase orders, subcontracting
Manufacturing BOMs, work orders, production planning
HR & Payroll Attendance, salary structures, leave
Chapter What it covers
Creating a Custom App Scaffolding and structuring your own Frappe app
Custom DocTypes & Forms Custom fields, property setters, form layouts
Server Scripts & Jobs Server scripts and scheduled background jobs
Client Scripts & Pages Client scripts and custom Desk pages
Print, Reports & Dashboards Print formats, report builder, dashboards
Workflows & Automation Workflows, notifications, and automation
Chapter What it covers
Payment Gateways Razorpay, Stripe, and UPI collection
Website & E-Commerce The built-in storefront and catalog
External APIs & Webhooks Outbound calls and webhook handling
Third-Party Connectors Logistics, messaging, and service connectors
Chapter What it covers
Docker Dev & Deployment frappe_docker for dev and production
Production Deployment Nginx, SSL, and Supervisor
Scaling with Kubernetes Helm charts and horizontal scaling
Backup & Monitoring Backups, recovery, and observability
Performance Optimization Query tuning, caching, and profiling
Chapter What it covers
Multi-Company & Multi-Tenant Architecting for many outlets and books
Data Migration & Bulk Ops Importing master data at scale
Testing Strategies Unit, integration, and permission testing
CI/CD Pipeline Automated builds, tests, and deploys
Case Study: ScoopJoy ERP Everything together, end to end

Fifty-six recipes you can copy into a real app, grouped by domain. Browse the full index, or start with the categories below.