Skip to content

Refactoring Template Handling - Implementing Plugin-like Mechanism #453

@KrzysztofPajak

Description

@KrzysztofPajak

Issue Description

Currently, our template handling system relies on a Themes directory, which limits flexibility and scalability. There is a need to revisit this approach and shift to a more modular and dynamic mechanism.

Proposed Changes

  • Removal of the Current Mechanism: Eliminate the entire Themes directory and its directly associated functions.
  • New Implementation Similar to Plugins: Propose the creation of a new template handling mechanism that works similarly to our existing plugin system. This means each template can be registered and installed as a separate plugin.
  • Addition of Theme.Minimal Plugin: As part of this change, introduce a new plugin Theme.Minimal, which will serve as an example of template implementation in the new system.

Benefits

  • Increased Modularity: This new approach allows for easier management of templates, similar to the handling of plugins.
  • Ease of Extension: The system will be more flexible in terms of adding new templates by developers.
  • Unified Architecture: Moving templates to the plugin system will bring more architectural coherence.

Considerations

  • What changes are required in the Project to support the new template system?
  • What are the best practices for creating templates in the new system?
  • How will the migration of current templates to the new system be handled?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions