ezsystems / specs

CLOSED, moved to another repo. Please visit:
https://ezplatform.com/product-feedback
Other
4 stars 1 forks source link

Angular2 Prototype Requirements #7

Open DavidLiedle opened 7 years ago

DavidLiedle commented 7 years ago

Demo and Public Repo pending (see comments)

dpobel commented 7 years ago

Using a framework like Angular2 goes a bit against the idea of an hybrid application as expressed by the community in various comments. If I sum up, the community more or less wants the admin interface to be first and foremost a Symfony application somehow lightly enhanced with JavaScript ie we are asked to adopt progressive enhancement even if this term is bit out of fashion these days.

By essence Angular2 (and it's the same for Embed.js ref https://github.com/ezsystems/specs/issues/8) is the opposite and is made to build single page application. So using Angular2 basically means keeping the same rejected strategy as the one currently in place in PlatformUI.

sunpietro commented 7 years ago

I agree with @dpobel when it comes to PlatformUI. But StudioUI is way different app. I don't feel a need to use Angular2 to build the Studio interface.

DavidLiedle commented 7 years ago

These are good points, but we need to keep in mind that there will be teams using eZ Platform that prefer to build things out on their own using Angular. (Same is true of Ember.js, mentioned above.)

Our prototype may not need to answer the question, "What would the Admin UI look like built in Angular?", but rather "What can we do so that teams wanting to build in Angular have a good DX when using eZ Platform?"

However, a partner demonstrated an admin UI they built using Angular. If they would like to share that publicly, this is an excellent time and place to put it on the table for examination as described above.

A solution such as the partner is working on explores bringing Angular to the world of eZ Platform, and I'd like to encourage and facilitate their efforts as much as we are able.

Our focus, however, could be on bring eZ Platform to the world of Angular–coming at the topic from the exact opposite direction. This is completely compatible with both the hybrid approach and the potential for wrapping legacy YUI and/or fresh React-or-whatever-is-best inside of discreet webcomponents.

The same is true for Ember.js, Vue.js, etc.

andrerom commented 7 years ago

@DavidLiedle I propose we close this until a need to look at use with Angular2 surface, might be someone in the community would like to look into that when v2 is starting to be more complete.

dfritschy commented 7 years ago

We at @cjw-network are a bit bewildered to see the community rejecting modern technologies like AngularJS or React. While I also opt for progressive enhancement for the frontend, the backend is a completely different story. I would expect a smooth and efficient user experience which can hardly be achieved by server side rendering.

Being always interested in new technologies, Jan has built a content editing backend with AngularJS and the eZ Publish REST API. The performance is absolutely stunning, and the modular architecture of AngularJS allows for easy extensibility, e.g. for custom datatypes.

We have stopped further development for the time being due to limited resources. But we are more than happy to share this with the community and will provide both a live demo and the source bundle within the next days. Stay tuned.

dfritschy commented 7 years ago

The live demo for our CJW Admin for eZ Publish/eZ Platform is online!

Please note: CJW Admin for eZ Publish/eZ Platform is a technology study only.

We decided to make it public as eZ Systems has raised and discussed the question of revamping the eZ Platform UI in different blog posts.

We feel that this project can add some practical insights to this discussion. The principles elaborated in this project could be applied to similar frameworks like ReactJS.

He have setup a demo where you can see the app in action. It is no beauty, is certainly limited, but offers basic backend functions at a stunning speed.

The demo will be reset every hour. Don't be afraid to play around.

For further information visit https://github.com/cjw-network/CjwAdminBundle. We plan to release the source code next week. It still needs some refactoring and documentation.