1

We are in the process of evaluating what's the best approach in order for us to share our global branding html across different applications (built in different technologies using different frameworks). Although the long-term plan is somewhat unify/standardize such technologies currently we need to come up with a plan in order to share not only content (we will do this with content interaction services and/or custom micro services that will connect to Tridion to consume content), but also design elements (I am talking html here).

We could go "front-end" (Angular, Knockout, etc...) but in some cases we are gonna have to embed application code within html and viceversa.

Is there a recommended approach that you guys know works? What is the synchronization process when html changes occur that need to be propagated across those heterogeneous applications?

I am also looking for what others are doing.

Have you had people using both DXA .net and DXA java simultaneously? (this won't, however, cover those applications built using other technologies)

To summarize, what I need some input on best practices on sharing html design in a heterogeneous architecture and how to synchronize html changes across the properties in such architecture. Also whether odata/content interaction services is the way to go to consume data from different applications/channesl (web/print/mobile, etc...)

I know is a bit of a long shot and that this a dilemma that has always existed, just looking for some recommendations.

Thank you in advance,

2 Answers 2

1

It is a bit of a lame answer perhaps, but since the DXA team is building both the DXA Java and the DXA .NET web application, yes we have some experience with sharing a design. Also looking forward with DXA 2.0, we plan to add support for Client Side JavaScript frameworks through the Model Service.

But in general, it shouldn't be a very hard task to align all your web applications on a single design (the single HTML design for DXA was one of the easiest things to accomplish, aligning the architecture between Java and .NET was way more complex). Sure there is a difference in view technology etc, but if you use one HTML standard (DXA choose Twitter Bootstrap for the standarized grid in its HTML), then you can reuse that HTML over all your applications.

update

In general you should get rid of apps which need to add logic (as in code) around the HTML, and also you should try and steer away from changes in the HTML though using an HTML standard/framework. With proper semantic HTML, the only changes that you ever need to make for a changed design should be CSS (and possibly JavaScript). The CSS (and JS) you can distribute as part of a build/deploy process, without the need for the application itself to require changes.

1
  • We have so many different apps that are managed by different teams (using different technologies) which normally copy/paste the html from the design repo and then add the logic around it (like we do in the public site by using razor views in DXA.net). The problem here (or the pain I should say) is how to keep all the apps in sync when a change in the design occurs and, wait for it... execute a proper regression testing process when it happens. Ideally we would like to change the html in one place and auto/magically being able to either update all the apps or tell which ones need to be updated. Commented Jun 14, 2017 at 20:43
1

Well, in my opinion the best practice mainly depends on whether you opt for CMS Baked/fried approach. Do you want to maintain the HTML Mark in component template or you just need a reference to the markup mentioned in component template(DXA way).

Finding a general solution to maintain the HTML Design for both together is going to be tricky as they differ conceptually.

1
  • Well thats what we are trying to decide. But the most likely decision will be to keep the html off the cms. I am also considering a Templating mediator that will grab the html from our "html design platform" and apply the transformation using mustache (which the html design platform relies on) or something like that... Commented Jun 14, 2017 at 20:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.