Maybe I don’t understand your query … Desk UI is mainly used for “low-code” development purposes. For “regular” develop tasks you will need a code editor, configure your bench with development_mode, etc …
Almost all development changes are stored in file system. You can create/edit those files directly without the Desk.
If not via file system, almost everything can be manipulated with an API that you can write a Python for and run in a terminal.
If you shared your use casr or your end goal, most likely you’ll get more specific help
Hi, I am just getting familiar with Frappe and ERPNext. What I was assuming is that by default for actions like creating Doctypes and such you had to use the Desk UI.
I am curious if that’s not the case. If I wanted to create new apps with Frappe framework, or customize ERPNext do I not have to go through the Desk UI? I do not want low-code.
If that’s the case could you point me to any tutorials/guides or documentation?
Hi, my goal is to completely avoid user interface interactions. If it’s programmatic like editing code files, calling APIs or using the CLI then that’s fine. I am just looking for any documentation/tutorials.
From the documentation I saw about the Frappe framework, it’s using the Desk UI which for example during Doctype creation automatically creates the necessary files and applies migrations, so I need documentation for how to do that without the Desk UI.
Here are the standard REST APIs available for any doctype (including “Doctype” doctype): REST API
This would allow you to create/update/read/delete documents in the system.
For other APIs, we have a tool called Commit: Commit - Developer tooling for the Frappeverse - this would allow you to search for other endpoints available within Frappe (or any other Frappe app). Some of the documentation is generated automatically via ChatGPT. It also has a database ERD viewer if you need to see the database relationships visually.
If your goal of avoiding UI interactions is to fully customize, in depth, an app or set of customizations, still it’s safe/better to use the Desk and then customize/develop beyond the Desk. The Desk won’t limit your journey.
I am trying to develop an automated customization layer on top using AI so the UI is a bit of an obstacle since I want to access all of the functionality programmatically.
Actually, I expected so when I asked about the end goal, I was going to write various reasons such as automated provision or an MCP or an automated development flow like from Jira Stories / Tasks to Code.
IMO, the Metadata-driven nature of the framework might make it very feasible, but come on, you know you’ll need to learn/master the framework well before any automation
That’s fair! I have worked with Odoo for a bit in the past but chose to go with Frappe for this project since it’s fully open source and I like the UI much more.
What I’m trying to do is build an agent that can customize ERPNext, but not being familiar with the it definitely isn’t helping
If you can point me to any resources where I can learn what I need asap I’d appreciate it a lot.