$ account frappe
ERPNext is a comprehensive open-source ERP (Enterprise Resource Planning) system built on the Frappe Framework. It provides a full suite of business management modules including Accounting, CRM, Buying, Selling, Stock/Inventory, Manufacturing, Projects, Assets, Quality Management, Support, and more. The system uses a metadata-driven architecture where DocTypes (document types) define data models, business logic, and UI behavior. The codebase follows a modular structure with each business domain in its own directory (accounts, buying, selling, stock, manufacturing, projects, etc.). It includes a modern React/TypeScript banking module built with Vite for bank reconciliation and statement importing. The system supports multi-company, multi-currency, multi-language deployments with extensive regional/localization support for tax compliance across many countries. It has a robust patch/migration system for database schema evolution and a comprehensive test suite.
Frappe HRMS is a full-featured Human Resource and Payroll management system built as a Frappe/ERPNext application. It covers the complete employee lifecycle including recruitment, onboarding, attendance and shift management, leave administration, payroll processing, expense claims, performance appraisals, and separation. The system provides both a desktop interface via the Frappe framework and a mobile-first Progressive Web App (PWA) built with Vue.js and Ionic for employee self-service. A separate roster application handles shift scheduling and assignment. The architecture follows Frappe's monolithic pattern with custom DocTypes, server-side Python controllers, client-side JavaScript, and extensive reporting. Payroll processing is a key strength, supporting salary structures with formula-based components, tax slabs, multi-currency, gratuity, and benefit claims. The codebase demonstrates strong engineering practices with comprehensive test coverage, data migration patches across versions, and reusable patterns such as safe formula evaluation, immutable leave ledger entries, and push notification mixins. It integrates tightly with ERPNext for accounting entries and payment processing.
Frappe Books is a full-featured, offline-first desktop accounting and inventory management application built with Electron, Vue 3, and a custom ORM framework (fyo) on top of SQLite. It supports double-entry bookkeeping, invoicing (Sales/Purchase/Returns), payment processing, stock management (batches, serial numbers, FIFO valuation), Point of Sale (classic and modern layouts), financial reports (Balance Sheet, P&L, Trial Balance, General Ledger, GST reports), loyalty programs, pricing rules, coupon codes, and multi-currency. The architecture is schema-driven: JSON schema files define document structures, and model classes add business logic via formulas, validations, and lifecycle hooks. The backend runs in the Electron main process and exposes IPC APIs for file operations, database access, and auto-updates. The frontend is a reactive Vue 3 SPA with a comprehensive component library. Regional support (India, Switzerland) is implemented through model overrides and schema extensions. The codebase demonstrates strong engineering practices with a layered architecture, but the custom framework introduces some coupling. It is actively maintained with CI/CD, automated tests, and regular patches.
Frappe Insights is a full-stack business intelligence application enabling users to connect to data sources, build queries visually or via SQL, create visualizations, and assemble dashboards and workbooks. The decoupled architecture features a Vue.js 3 frontend communicating with a Python/Frappe backend through REST APIs. Key capabilities include a multi-database query builder using Ibis and SQLGlot, ECharts-powered visualizations, role-based access control, and DuckDB-based data warehousing for caching imported tables. The frontend leverages Vue composition API for reusable logic, while the backend uses Frappe's DocType system for extensibility. The project demonstrates solid engineering practices with modular API design, reusable components, and abstraction layers, though complexity arises from supporting numerous database types and deep Frappe integration.