Hi David,

The quick (and simple) answer is that we chose to use Angular Universal to 
support better SEO (Search Engine Optimization).  Angular Universal allows 
spiders (or other tools) that cannot run Javascript to still work with DSpace 
7.  Without Angular Universal, if something could not support Javascript, it 
would not be possible to use DSpace 7....and that would even include screen 
readers or specialized browsers (or similar tools) that do not support 
Javascript.   With Angular Universal, if you are using a tool that doesn't 
support Javascript, you are still able to interact with the application as if 
it were plain HTML (though not all features are available).

You are correct that the design is such that the (new) Angular-based UI is for 
the UI code only...all the application logic is in the new REST API.

Much more of the history of this decision can be found in this summary page: 
https://wiki.lyrasis.org/display/DSPACE/DSpace+7+UI+Project+Plain+Language+Summary

Additional presentations (with high level diagrams of the design) can be found 
at https://wiki.lyrasis.org/display/DSPACE/DSpace+Release+7.0+Status

Hopefully that helps provide a quick overview!

Tim
________________________________
From: dspace-tech@googlegroups.com <dspace-tech@googlegroups.com> on behalf of 
dc...@prosentient.com.au <dc...@prosentient.com.au>
Sent: Wednesday, September 9, 2020 7:18 PM
To: dspace-tech@googlegroups.com <dspace-tech@googlegroups.com>
Subject: [dspace-tech] Insight into DSpace 7


Hi all,



A while ago, I heard “DSpace 7 will use Angular for the UI”. I assumed that 
meant an Angular application run in the browser. However, DSpace Angular 
appears to use Angular Universal, so it’s still going to be run server-side - 
just using Node.js.



Is that idea that DSpace Angular (via Angular Universal) will provide the 
presentation layer while DSpace REST API provides the application layer? I’m 
curious about the choice of Angular Universal. Is the idea that it’s easier to 
write a UI in Javascript than JSP? Having separate servers for the front-end is 
interesting. I could see the merit of running up multiple DSpace Angular 
servers to sit in front of the DSpace REST API. That could certainly help with 
availability.



It looks like DSpace Angular is going to be serving static assets directly, but 
doesn’t that seem inefficient in comparison to using Nginx or Apache httpd? Or 
is the idea that most production installs will use a caching proxy like Varnish 
or CloudFront in front of DSpace Angular?



I’m curious to hear more!



David Cook

Software Engineer

Prosentient Systems

72/330 Wattle St

Ultimo, NSW 2007

Australia



Office: 02 9212 0899

Online: 02 8005 0595



--
All messages to this mailing list should adhere to the DuraSpace Code of 
Conduct: https://duraspace.org/about/policies/code-of-conduct/
---
You received this message because you are subscribed to the Google Groups 
"DSpace Technical Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
dspace-tech+unsubscr...@googlegroups.com<mailto:dspace-tech+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dspace-tech/056501d68707%24fac56690%24f05033b0%24%40prosentient.com.au<https://groups.google.com/d/msgid/dspace-tech/056501d68707%24fac56690%24f05033b0%24%40prosentient.com.au?utm_medium=email&utm_source=footer>.

-- 
All messages to this mailing list should adhere to the DuraSpace Code of 
Conduct: https://duraspace.org/about/policies/code-of-conduct/
--- 
You received this message because you are subscribed to the Google Groups 
"DSpace Technical Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dspace-tech+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dspace-tech/DM5PR2201MB11484C6F05E81347091A7528ED270%40DM5PR2201MB1148.namprd22.prod.outlook.com.

Reply via email to