Hello,Single-Page Application (SPA) is a very exciting technology strategy. I work for a customer that wants me to investigate whether it is possible to make the entire website as a SPA with AngularJs. SPA are on the rise. But i find nothing about this in EPiServer context. Except that the CMS itself is a SPA.
Is it possible to make en entire website as an SPA with Episerver?. If no are there plans to support this in the near future?
It is possible to do that I am pretty sure of. If you are doing it with AngularJs and MVC5 there should not be so mutch differense from a regular MVC site in EPiServer functions. The edit and admin mode will not be SPA of course but I do not think your customer will demand that.
A little tip, do not forget the browser history stack when doing the site, a site without a working back-button is not good.
Since the templating system in EPiServer is very standard .net no matter if you choose MVC or WebForms, I would say that building a SPA is more a question of how you manage your frontend rather than if EPiServer would be suitable.
EPiServer can deliver the content as any format you'd like.
How can i benefit from the templating system. The SPA is fully loaded in the first initial page load and then the client takes over. Page regions are replaced or updated with new fragments loaded from the server on demand. The server has no clue on what going on.
I am thinking this wont happen any time soon.
The templating system is "just" a way to route an URL to content data (an implementation of IContentData). Then you have renderers registered for the type of the content data. These renderers can be regular MVC views (aspx) for pages and ascx for blocks or just JSON. It's up to you.
You can do whatever you want with the APIs in the framework and not use the templating system at all. So I cannot see that the framework would stop you from doing a SPA. However, I would not recommend doing that for a corporate website, hence the name "Single Page Application" and not "Single Page Website".
Here is a example on how to do a SPA with angularJs and ASP.NET WebApi. It is not EPiServer, but EPiServer supports MVC and WebApi so you can use it without any problem:
This is absolutly possible with the new Content Delivery Api and with the work the UI team are doing with OPE and SPA.