Skip to content

Branding cross-framework modules #3

Description

@moufmouf

The README states that definition-interop tries to offer a solution for writing cross-framework modules.

But actually, definition-interop is really one piece of a big puzzle that leads to cross-framework modules.
In order to have cross-framework modules we need:

  • one or many "loaders" to convert YML / JSON / whatever files to definition objects
  • one or many implementations of the definition-interface (mnapoli/assembly)
  • a mechanism to discover those files (Puli)
  • a mechanism to discover the available loaders (maybe Puli)
  • one or many implementations of a container consuming definitions (thecodingmachine/yaco, PHP-DI soon?)
  • a Symfony bundle to directly convert definition-interop object to Symfony definitions
  • for each framework, either a direct support of definition-interop objects or a PSR-11 compliant container that can be linked to a container that is both PSR-11 compliant and definition-interface compliant (Yaco, maybe PHP-DI soon?)

So basically, the global solution is wider than the scope of definition-interop, that should probably only focus on definitions interoperability.

I'm wondering if at some point (not necessarily now), we should not think about branding this whole cross-framework modules idea under some catchy name.

For instance:

  • Harmony packages
  • or Universal packages

(I like the "harmony" name because it conveys the idea of frameworks/modules working together in harmony, and just like symfony and composer, it is music related)

We could build a simple Couscous website explaining the concept and how it applies to every kind of developers out there.

The website could have those sections:

  • For framework developers
  • For package developers
  • For end-application developers

Also, the website could make a number of recommendations about services naming to avoid conflicts, etc...

What do you people think? Is "branding" this initiative a good idea? Is it too early?
If you think this is a good idea, I'm willing to work on a first version.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions