
Learn to install and build a web application with the Frappe Framework, progressing from setup to a site and real-world example, using Python and JavaScript.
Discover the frappe framework, a Python-based MVC platform that uses metadata to create database tables and forms, with Python and JavaScript support, an admin interface, and multitenant site management.
Discover how to install frappe bench by setting prerequisites, installing Python and package managers, editing the configuration for unicode encoding, and starting the bench server to run the Frappe framework.
Initialize a frappe bench, install the frappe app, and create a site named Moloko. Create the database, set the administrator password, and review the site configuration in the Moloko directory.
Learn to set up a Frappe Desk environment by configuring site properties, language, country, timezone, currency, user permissions, and core settings, and explore integrations, customization, and built-in tools.
Create your first custom app in the Frappe framework by running bench new app, naming Nemo, and installing the demo site; enable developer mode for development.
Create a doctype in the frappe framework by defining the paper model, configuring modules, fields, naming, permissions, and document links, then observe its mapping to a database table.
Explore common doctype field types in the Frappe framework, including file uploads, images, date and time, floating point numbers, text and select fields, and layout with column and section breaks.
Learn essential doctype field properties in the Frappe framework, including mandatory settings, default values, label visibility, and hidden options, illustrated with a level field example.
Explore doctype naming options in Frappe framework, including naming by data, name field, unique constraints, naming series, and format options, then configure user permissions for create, read, update, and delete.
Explore doctype types in the frappe framework, including normal doctypes, single doctypes, and timetables; learn to create documents, embed tables in parent doctypes, and manage permissions.
Explore client side scripting with JavaScript and Python in the Frappe Framework, as you set up a new site, create a web application, and script with Python for automation.
Explore client side events in frappe framework, such as onload, before save, before submit, on submit, and cancel, plus change events that respond to field value updates.
Learn to create and customize messages in the Frappe framework by fetching document fields and displaying them in a dynamic notification box when the form is new.
Learn to set a field value in a Frappe framework doc using script, building a dialog box to capture first name, last name, and age, and compose fullName from inputs.
Create a custom button in the Frappe framework, placed at the top of a document, with click-triggered messages; also configure a dropdown button with options.
Learn to trigger events and functions in the Frappe framework by creating events, using an enablement method and form state checks, and validating messages on document save.
Learn how to set and update a child table field in Frappe Framework using plain scripting to add values, enable events, and manage dates.
Create a child doctype linked to a parent, add link and table fields, fetch data from parent, and add a button to populate the child table with filtered parent data.
Explore server side events in the Frappe framework by scripting before save, before insert, on submit, on cancel, and after delete to validate data and control workflows.
Learn to fetch values from related documents with frappe.db.get_value and update fields with frappe.db.set_value, including getting first and last names and updating a parent's last name during a save event.
learn how to use frappe.get_doc() to fetch an entire document by doctype and name, returning all field values including linked and parent documents, and display them.
Explore using frappe.new_doc() and frappe.delete_doc() to create and delete documents with Python scripts, including passing doctype, name, and fields, and saving to the database.
Explore document methods in the frappe framework, including insert, before insert, validate, update, and after insert events, plus delete and set value operations on documents.
Demonstrates using frappe.db.get_list to fetch documents, apply filters, and retrieve fields such as first name, last name, and full names, then print parent document details.
Learn to use frappe.db.exists() to check if a document exists and frappe.db.count() to count documents, with practical examples in the Frappe framework.
Learn to write sql queries in the frappe framework using frappe.db.sql, perform create, read, update, and delete operations on database tables, and fetch results as dictionaries with filters.
Learn how to use frappe.call to invoke document operations, pass name and document arguments, handle callbacks, and update fields like full name and age in a pattern document.
Learn how to invoke a user defined whitelisted server side method in the frappe framework using frm.call, pass parameters, and display a list of documents with names and ages.
learn how frappe.call invokes a method at different locations, from outside the pipeline, and how to create a new pattern document and update a white list.
This course is designed for Beginner level frappe developers. Students can learn Frappe frame work from scratch.
Frappe, pronounced fra-pay, is a full stack, batteries-included, web framework written in Python and JavaScript with MariaDB as the database. It is the framework which powers ERPNext. It is pretty generic and can be used to build database driven apps.
The key difference in Frappe compared to other frameworks is that meta-data is also treated as data and is used to build front-ends very easily. We believe in a monolithic architecture, so Frappe comes with almost everything you need to build a modern web application. It has a full featured Admin UI called the Desk that handles forms, navigation, lists, menus, permissions, file attachment and much more out of the box.
Frappe Framework uses Python for the backend. It comes with a simple yet powerful ORM as an abstraction over CRUD operations. The default database is MariaDB. Postgres support is in beta. The basic programing knowledge in Python and JavaScript is required for doing in this course.
Syllabus cover both server side scripting using python and client side scripting java script.
The course start with a quick introduction to frappe frame work, installation of frappe in ubuntu system, frappe desk, doctypes in frappe, different client side scripting server side scripting.
Basic level knowledge in MySQL is helpful for understanding the data base concepts.