Skip to content

Allow Dynamic Component Registration (Avoid Manual Resolver Management) #750

@thisisudayan

Description

@thisisudayan

Hi,

First of all, thank you for Craft.js — it’s a powerful and flexible editor framework.

I’m currently building a visual builder system with many reusable components (blocks, sections, elements). One challenge I’m facing is the requirement to manually register every component inside the resolver prop of .

As the number of components grows, maintaining the resolver becomes:

  • Repetitive
  • Hard to scale
  • Error-prone when components are added or renamed
  • Architecturally restrictive for plugin-based systems

For example, even if I just want to insert a predefined structure (like Image + Text together), Craft requires all component types to be statically registered in the resolver for serialization/deserialization.

It would be great if Craft supported one of the following:

  1. Dynamic resolver registration (e.g. registerComponent API)
  2. Lazy component resolution
  3. Plugin-based auto registration
  4. A fallback component resolver function
  5. Or the ability to serialize without strict resolver dependency

This would make Craft much more scalable for large no-code builders and block-based systems.

Is there any recommended pattern for large-scale component management?
Or are there plans to improve resolver flexibility in the future?

Thanks again for the great work

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions