About WebMVC (Freemarker) UI

WebMVC is new user interface for DSpace built on top of Spring's WebMVC framework. The goals of the project is to write the user interface in a clean technical implementation, with business logic removed from the presentation layer.

At the presentation/view layer, any number of technologies could have been used including JSP's, however the current implementation in the WebMVC project is to use Freemarker, a templating language. 

It has extensive theme support, and allows different themes to be applied to different areas of a repository.

Development is ongoing, and as an open project, it could always use assistance. Fork this project on GitHub, and start contributing today: https://github.com/DSpace/webmvc

Issue tracking will be done in GitHub Issues.

The old Jira issue tracker for this project is still up, but we are no longer adding issues there: https://jira.duraspace.org/browse/DWMVC

This project also has its own GSoC 2011 Student Project: GSoC 2011 - DSpace WebMVC

Getting Started

WebMVC is a module add-on to DSpace. The instructions below will guide you how to check out a stable release of DSpace, and alter it so that it references the WebMVC project into its build process.

Checkout the source code.

mkdir project-webmvc
cd project-webmvc
svn checkout http://scm.dspace.org/svn/repo/dspace/tags/dspace-1.7.1/dspace/
git clone git://github.com/DSpace/webmvc.git

Edit ~/project-webmvc/dspace/pom.xml and add an entry for webmvc.

Index: pom.xml
===================================================================
--- pom.xml	(revision 6625)
+++ pom.xml	(working copy)
@@ -505,6 +505,7 @@
-->
<modules>
<module>modules</module>
+	<module>../webmvc</module>
</modules>

<build>

Compile everything, and add the war for freemarkerui to Tomcat

cd ~/project-webmvc/dspace
mvn package
sudo mkdir /dspace
sudo chown dspace:dspace /dspace
cd target/dspace-1.7.1-build.dir
ant init_configs
ant update

## Add the .war to tomcat, there are many ways of doing this.
sudo cp ~/project-webmvc/webmvc/freemarkerui-webapp/target/dspace-freemarkerui-webapp-1.7.0-SNAPSHOT.war /var/lib/tomcat6/webapps

## Edit your dspace.cfg to have your bootstrapping database configs (i.e. dbname, password)
vi /dspace/config/dspace.cfg

/etc/init.d/tomcat6 restart

Test it out in your browser

/opt/google/chrome/google-chrome http://localhost:8080/dspace-freemarkerui-webapp-1.7.0-SNAPSHOT

Screenshots

Some examples, of what is currently available.

Community and Collection list.

Screenshot of browse results.

Additionally, WebMVC has multiple themes (Mirage and Kubrick), the default theme is Oasis.