Frappe framework: Full Stack Low code platform
Frappe framework is a low code, open source, web framework in Python and Javascript for the 21st century. Frame framework eliminates 97.42% effort in developing software. The framework comes with almost everything you need to build a modern web application. It has a full blown Admin UI called the Desk which handles forms, navigation, lists, menus, permissions, file attachment and more
Frappe manages the application including:
● Metadata
● Database operations (CRUD)
● Controllers
● Web Workers and Job Workers
● Views
● Admin UI (Desk)
● Portal UI
● Reports and Prints
● REST API
● Communication (Email/SMS etc)
Frappe Framework uses the following services for running the application:
● MariaDB (database)
● Frappe Framework (Python) (web framework)
● Redis (cache + queue)
● NodeJS (socketio)
● File Server
● NGINX (Web Proxy)
● Supervisord + Gunicorn (process manager)
Bench and architecture
![frappe](https://korecent.com/files/Screenshot%20from%202024-01-03%2015-55-23.png)
Frappe framework benefits
Frappe was built to power our flagship product ERPNext. The core philosophy at Frappe is to write as little code as possible. Frappe Framework powers mission critical products for large businesses. Customers use the Frappe framework for building internal apps as well as full stack customer facing SaaS applications. It comes with following benefits
Rapid Application Development
After setting up Frappe Framework, you can be productive in no time. Creating models, wiring controller code and updating views are all handled by the framework.
Frequently used components in building B2B softwares
Anything that might be needed by a modern web application is probably built into the framework already. PDF generation, Emails, SMS, Web Pages you name it. If there is something missing in Frappe Framework, we might already be working on it right now.
Easy Deployment
Bench is the all-in-one tool to manage all things Frappe. It handles app updates, database migrations, generating configs for nginx and supervisor, scaffolding new apps and much more.
Multi Tenant
Bench supports multi-tenancy out of the box. It means you can spin up multiple instances of apps with separate databases on the same codebase. It also supports port-based multi-tenancy where you can set up multiple bench environments for different versions of apps.
Extensible architecture
Build powerful extensions on top of Frappe by creating your own apps. Apps can bring their own models or modify existing ones in Frappe.
Frappe Cloud
Frappe Cloud (frappecloud.com) makes it easy to host Frappe Apps like ERPNext with a modern
dashboard, analytics, and predictable pricing. Frappe Cloud is powered by AWS
Why Frappe Cloud
Frappe Cloud offers reliable, scalable and secure cloud hosting for Frappe and ERPNext Enterprise Plus applications.
Features
Reliability
Security
Scalability
Architecture
Typical Frappe Cloud (FC) cluster has a similar architecture:
A more complex architecture would explain the redundancy for each server along with the network cluster.
Components
Benefits over self hosted
Benefits | Self Hosted | Frappe Cloud |
---|---|---|
Easy Deployment | Install and deploy with Linux Shell | UI based containerised deployments |
Automated Upgrades to Frappe Apps | No | Yes, easy and assisted upgrades |
Automated Backup and recovery | No, Manual and error prone | Automated backups and recovery |
Automated Logs and monitoring | Manual configuration | Automated and always on |
Centralized database for multi-tenant deployments | No | Yes |
Centralized access control | No | Yes, Team level permissions and key based SSH access control |
Best practices and pre-configures DevOps | You setup your own devops practices | Preconfigured best practices |