Page History
...
UI Framework | Languages / Technologies | Widely Adopted? | Ease of Customization | Responsive web design support | HTML5 support | REST-friendly | Faceted/Filtered Search/Browse friendly | Rapid Development friendly | Third-party plugin ecosystem | Notes |
---|---|---|---|---|---|---|---|---|---|---|
Existing DSpace XMLUI | Java, Apache Cocoon, XSLT | No | Not really (except maybe at Bootstrap level with Mirage2) | Mirage 2 theme = Yes Other themes = No | No | No | Yes | No | No | |
Personal opinions on DSpace XMLUI:
| ||||||||||
Existing DSpace JSPUI | Java, JSPs | No | Not really (again, except maybe at Bootstrap level with Mirage2) | Yes | A few areas (e.g .HTML5 upload), but not overall | No | Yes | No | No | |
Personal opinions on DSpace JSPUI:
| ||||||||||
Play! Framework | Java, Scala | Yes, some major sites use it according to Wikipedia | Yes, can be used with Bootstrap | Yes | Yes, has a modules repository | |||||
Personal opinions on Play Framework:
| ||||||||||
Spring Boot | Java | |||||||||
Personal opinions on Spring Boot:
| ||||||||||
Ruby on Rails | Ruby | Yes | Yes, has a Rails Bootstrap app, plus many gems | Yes | Yes, in form of Rails plugins & Ruby gems | |||||
Personal opinions on Ruby on Rails:
| ||||||||||
Hydra Framework | Ruby on Rails, Fedora, Blacklight | Not worldwide, but has a growing following in libraries, etc. The base technology, Ruby on Rails is widely adopted | Yes (well, Sufia uses Bootstrap) | Yes (uses REST to communicate with Fedora) | Yes (Blacklight) | Yes | Yes, because it's Ruby on Rails, you often can use Rails plugins and/or Ruby gems | Hydra doesn't currently "work" with DSpace. However, if we decided on the former (create a DSpace-like Hydra Head), there are members of the Hydra Community who are currently striving to do that same thing. | ||
Personal opinions on Hydra: | ||||||||||
Grails | Groovy (based on Java) | Yes, large number of sites using Grails listed on website | Yes, has several Bootstrap plugins | Yes | Yes, has a plugins repository | |||||
Personal opinions on Grails:
| ||||||||||
JQuery UI | Javascript | Yes | Yes, e.g. there is a JQuery UI theme for Bootstrap | Yes | Yes, has a plugin repository | |||||
Personal opinions on JQuery UI: | ||||||||||
(Javascript with RESTful JSON interface & Model-View-Presenter) | Javascript | Yes, large number of major sites listed on Wikipedia & their homepage | Yes, or at least you can use it in conjunction with Bootstrap. | Yes | Yes | Yes, has plugins and extensions | Designed for developing "single page web applications". It could prove difficult to use with DSpace because of the complexity of a repository system. | |||
Personal opinions on Backbone.js: Art Lowel (Atmire) Backbone is too low level imo. You still have to write a lot of boilerplate code yourself. We should probably replace it with one of the more modern JS MV* frameworks as alternatives to ember js, like angular, knockout or react | ||||||||||
(Client-side Javascript web application using MVC) | Javascript | Yes, see their list of users on website | Yes, can use in conjunction with Bootstrap, e.g. https://indexiatech.github.io/ember-components/#/overview | Yes | Yes | Yes, there's an "addon" repository | Uses Grunt, Bower, NPM (all of which are also in use by Mirage 2 theme) | |||
Personal opinions on Ember.js: Art Lowel (Atmire) Ember is very "opinionated" which is great to guide you in to using best practices to solve common problems. But it can get tricky if you need to solve an uncommon problem and you have to fight the system to make it work. However I'd like to add a +1 for ember. |