elsa-core icon indicating copy to clipboard operation
elsa-core copied to clipboard

[FEAT] Import/Export Functionality Using Recipes

Open sfmskywalker opened this issue 5 months ago • 0 comments

As more Elsa modules are developed—particularly those managing a wider range of objects such as intelligent agents, users, customers, orders, and documents—the need for a unified import/export functionality becomes increasingly important. Drawing inspiration from Orchard Core, which uses a concept called "Recipes," I propose implementing a similar approach in Elsa.

Key Points:

  • Recipes in Orchard Core: These are "smart" JSON documents that support dynamic expressions and allow for modular participation in the import/export process.
  • Modular Design: Any module can participate in the import/export process by implementing a recipe handler, eliminating the need for each module to individually implement this functionality along with the corresponding UI.
  • Benefit: Simplifies the process for developers by providing a consistent approach to import/export across all Elsa modules, reducing redundancy and ensuring a more cohesive user experience.

Proposed Implementation:

  • Introduce a recipe handler mechanism in Elsa, similar to Orchard Core's approach.
  • Ensure that each Elsa module can easily integrate with this mechanism by implementing a recipe handler to manage its specific import/export needs.
  • Provide documentation and examples to guide developers in adopting this approach for new and existing modules.

This will streamline the import/export functionality across the Elsa ecosystem, enabling a more modular and scalable architecture.

sfmskywalker avatar Sep 01 '24 19:09 sfmskywalker