Is it possible to create custom field type for my custom app?

Hello everyone,

I’m new to Frappe and currently exploring its capabilities. I really like the framework so far, but I’ve noticed that the available field types for DocTypes are somewhat limited for advanced use cases.

For example, let’s say I want to implement a Query Builder as part of a DocType. Ideally, I’d like to define a custom field type that can:

  • Render a completely custom UI (custom JS/HTML/React component*).

  • Interact with the user inside the form.

  • Store and retrieve data like any other built-in field type.

My goal is to be able to create a new DocType, add a field, and select my custom “Query Builder” type from the list, which would then render its own UI and handle serialization automatically.

Is it possible to extend Frappe to this level? If so, what would be the recommended approach or entry point for implementing a custom field type like this?

Thank you in advance for any guidance or examples.

Hi there,

Adding a new field type would be complicated. If you’re just looking to add a new widget on top of an existing field type, which is actually what people want 99% of the time, that’s a lot easier.

See here for example:

Also check out Open Source Business Analytics Tool | Frappe Insights - might help