Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A suggestion regarding the shape of the project #23

Open
baldram opened this issue Nov 3, 2019 · 1 comment
Open

A suggestion regarding the shape of the project #23

baldram opened this issue Nov 3, 2019 · 1 comment

Comments

@baldram
Copy link

baldram commented Nov 3, 2019

Hi Dmitrii!
Thanks for this great project.
I can't believe in what I found on Github. It looks like not only CDI, but even micro-Errai!
The Errai is strange. One of the greatest things built ever and on the other hand you can't use it (probably it's too large for maintenance, their demos don't work at the moment, it contains the backend part - what about the people who like eg. SpringBoot; and so on; a swiss knife is not always the best solution). So Erray is really great, but CDI is almost everything I need from Errai and it's only 10% of everything they provide. So why do I need to take this everything?

As this is POC for crysknife, I would like to provide some input from my side. It would be great to aim in modularity from the very beginning. I mean, that if I need only CDI&IOC, then I take only CDI-IOC module, and this is in fact the best part(!).
If I need additionally the UI component (this @Templated and so on), then I include this to my project (I see that UI module is already available in the project, and it is its integral part if I'm not wrong).
I would see the CDI-IOC module as a core library. Then the micro-Errai framework could be built on top of it. It would include extensions like the UI and Databinding (which is also great!) and some more probably. But not too much. I think most of the goodies come with Elemental2 and so on. The networking stuff is just the native Fetch API, so it's enough to talk to REST API. So maybe the Navigation/Routing module would be an interesting component to include in the future. The great feature like Events are part of CDI already, so it would be the core.

So in short, I would see the project like:

  • crysknife-core: including the CDI-IOC (with Events which are part of CDI),
  • crysknife-framework built on top of the core: the micro-Errai including UI, Databinding, Navigation and maybe something else.

What is your vision? Maybe it already goes in this direction?

Best regards,
Marcin

@realityforge
Copy link

At the risk of sounding like a bit me-too. This kind of direction would definitely appeal to us. We currently are relatively heavily invested into dagger for our client-side apps and CDI for our server-side apps. We are happy with CDI but have never been happy with dagger other than it was a compile time framework. (See some of our notes on dagger at https://github.com/arez/arez/blob/master/TODO.md#better-injection-framework although we have a bunch more pet hates tucked away in issues and non-OSS projects).

We would love to switch to a framework that just did CDI on the client-side.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants