Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at

  • Simon Ulmbrant 34 posts 154 karma points
    Apr 02, 2020 @ 05:58
    Simon Ulmbrant

    Modern frontend framework in Umbraco


    What is the experiences of using modern frontend frameworks with Umbraco? Both for backoffice and frontend? How did you integrate it? Any examples?


  • Nathan Woulfe 447 posts 1664 karma points MVP 5x hq c-trib
    Apr 02, 2020 @ 23:24
    Nathan Woulfe

    On the front-end, you're free to use whatever framework you choose. With Heartcore/headless, you can go further and use whatever stack you prefer.

    Backoffice is built on AngularJs, but there are examples floating around of people integrating VueJs.

  • Simon Ulmbrant 34 posts 154 karma points
    Apr 03, 2020 @ 07:35
    Simon Ulmbrant

    Thanks for your answer. What I asked for was more like a discussion of different solutions, examples, cool tweaks and so on both for frontend and backoffice. I'm aware of that I can do the frontend however I want and that the backoffice is developed with AngularJs.

  • Thomas Rydeen Skyldahl 47 posts 229 karma points
    Apr 03, 2020 @ 08:55
    Thomas Rydeen Skyldahl

    What we have done is that we use a custom controller that replaces the default MVC controller.

    The controller calls a mapper we have built to generate a JSON response for the specific url.

    If its an initial request we response with html including the bootstrapping code for Angular 9+ including the page json in a script tag to avoid the extra request to load the JSON, the inital request also contains json for the header and footer,

    All other requests are handled client side when routing in the angular app, and then the routing logic calls the specific url including ?type=json to tell the controller to respond with JSON this also avoids browser caching issues with different responses originating from the same url.

Please Sign in or register to post replies

Write your reply to: