You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 61 Next »

Contents

DSpace and Google Summer of Code

Student applications are accepted Mon, March 28, 12pm PDT – Fri, April 8, 12pm PDT.

Please spread awareness of this program and DSpace among your best students! Point them to:

Ideas for Potential DSpace Summer of Code 2011 projects

Add your ideas here!

Please add your suggestions for GSoC 2011 projects related to DSpace! If you are interested in mentoring, please let us know! Also, be sure to visit the listing of Past GSoC Project Ideas below, to see if anything there is still relevant.

Please add your own ideas to the table below, and feel free to volunteer as a mentor for any existing idea 

Summary

Relevant DSpace component(s)

Detailed Description

Mentor volunteer(s)

Enhanced RESTful API

dspace-api
dspace-services
rest

Building on previous years' REST projects, this project is to result in:

  • (non-basic!) authN and authZ functionality
  • write / admin methods
  • minimum of JSON and XML output formats
  • communication and collaboration with community, on:
    • testing, benchmarking, hacking demo apps
    • promotion and awareness
    • documentation
      Note: The student previously the working on read-only RESTful API project has indicated they'd like to continue work on it outside GSoC, so this entry should perhaps be removed for now

 

WebMVC (Freemarker) UI development

modules/webmvc

WebMVC is currently under development, and is creating a new user interface based on Spring's WebMVC framework. This has the same goals as the JSPUI rewrite project in providing a clean technical implementation with business logic removed from the presentation layer.

Although a number of technologies can be used for the presentation layer, the current implementation focuses on Freemarker - a template based language that restricts the amount of logic that you can place in the presentation layer. In addition, it gives more flexibility as to where those templates can be stored, which gives greater possibilities for future customisation.

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

Possible GSoC work includes ensuring parity with XMLUI where possible, or further extending the functionality.

Graham Triggs

Usage statistics reports

dspace-xmlui
dspace-jspui?
dspace-stats?
dspace-solr?

The new solr statistics engine in DSpace needs to generate more reports, replace the legacy "site-wide" statistics report that is still in use, and make use of
Google Charts API (or similar) to make graphs easier to read, compare between items, etc.

 This project will result in

  • Legacy site-wide statistics (generated w/ log analyzers) replaced with reports generated from new statistics engine
  • More usage event types being captured (?)
  • Reports presenting aggregations of counts across site/communities/collections/items/etc

Kim Shepherd

Andrea Schweer

RTMP A/V streaming integration

dspace-api
dspace-xmlui
dspace-jspui?

Integrate DSpace authentication, authorization and bitstream dissemination with an open source RTMP streaming server such as RED5.
Custom flash player is also desirable.

This project will result in

  • Ability for DSpace to serve most A/V  content via RTMP
  • Ability to deny playback for non-public bitstreams to unauthorized users
  • Custom flash player for use with XMLUI and JSPUI(?)
  • Integration with UsageEvents system to fire events on pause, resume, connect, etc.

Kim Shepherd

Andrea Schweer

New UI built over RESTful services

dspace-api
dspace-XXXui

Currently, DSpace functionality could be accessed using JSP and XML user interfaces. As in the meantime many other technologies arrived which could provide different way of user experience and UI customization, the idea is to create a new interfaces using some of the following technologies:

  • Vaadin - component based framework, server run, provides rich visual experience to the users. In this project the implementation would be coupled directly with dspace-api.
  • Client run interface (maybe ExtJS other JavaScript based) backed by REST API for DSpace .

    The most important functionality these interfaces should deliver is user interface which has attractive look and feel and provides users with enhanced usability. Additionally, easier customization of resulting interface would be additionally appreciated. As of project complexity and project deadlines, support for many administrative functions in the interface is not so important in current stage.

    Attractive, easy to use and customize interface based on currently appealing technologies would further promote DSpace capabilities and play role in its adoption. Client rendered interface based on REST would further decrease load on the server and therefore push DSpace deployment for bigger repositories.

Bojan Suzic

Accessibility

dspace-api
dspace-xmlui

DSpace is selected as an institutional repository platform for one special library for the blind (details come later). Its implementation/adaptation for institutional use is currently in progress (near end-stage). The institution would be willing to share some ideas, requirements and code already done in order to make solution widely available for institutions of similar type.

Some of important aspects and ideas of customizing DSpace for such purposes would be:

  • adopt it on such way that it provides higher usability for blind persons
  • create mobile application (Android, IOS...) which could provide blind users possibility to browse repository, download and listen books
  • provide member management interface for closed-type library repository
  • adopt DSpace components in order to better fit institutional needs of such libraries
  • provide better support for delivering secured content (DRM of PDF documents, Daisy books etc)

Bojan Suzic

Scriptable Curation Tasks

dspace-xmlui
dspace-jspui
curation tasks

DSpace's Curation System allows administrators to run tasks on individual items or sets of items at various stages of the item's lifecycle. At the moment, new tasks need to be written in Java, compiled and made available to the DSpace codebase. The curation system could be extended by allowing administrators to write curation tasks in a simplified programming language (eg Groovy, Jython or JRuby) that can then be run in a one-off fashion, or stored within DSpace and re-run at a later point. This would give DSpace administrators a middle ground between bulk metadata editing and writing full-out Java code; it would also allow simple code to be run by people without shell access to the DSpace server.

Example tasks are:

  • For all items (in the repository/in a given collection), if the item's dc.description metadata contains a given string, move the item's bitstream from the ORIGINAL bundle to a different bundle
  • For all items (in the repository/in a given collection), if the item's metadata value in dc.identifier.doi starts with 'http://xyz/', strip out that part and write the remainder of the value back into dc.identifier.doi
  • For all items (in the repository/in a given collection), if the item's metadata value in dc.identifier starts with 'ISBN: ' or 'doi: ', remove the value, strip out that part and write the remainder of the value into dc.identifier.isbn or dc.identifier.doi as appropriate

  • The first task cannot be done using bulk metadata editing because it affects the item's bitstreams as well as the metadata. The other two tasks could be done using bulk metadata editing but, for someone who can write code, may be faster to do in a scripting language than via metadata editing.

    A good trade-off must be made in exposing enough of DSpace's data model to be useful while hiding some of the more complex parts; some precautions will most likely need to be taken to ensure that the core DSpace functionality can't be compromised by the tasks.

Andrea Schweer 

Kim Shepherd

Improve Submitter User Experience

dspace-xmlui
dspace-jspui?

Generally clean up submission process, especially at UI level, and provide a more user friendly submitter experience. (Need to brainstorm out exactly what changes to make obviously)
Examples may include:

  • Finding ways to ease interaction with the submisssion UI via jQuery or similar technologies (improved step-by-step feedback, improved upload process, etc)
  • Provide popup help/tips on various submission fields?
  • (Other thoughts/ideas welcome...)
    Comment (Andrea): I'd really like to see an option for DSpace administrators to configure the submission UI via the web interface. I'm aware of the Google Summer of Code 2009 Submission Enhancements but I don't know what the outcome of this project was -- it doesn't seem to have made it into DSpace yet.

Needs a Mentor
Andrea Schweer  (as co-mentor)

Past DSpace GSoC Projects

Please visit Past DSpace Summer of Code Projects for a full listing of all past DSpace GSoC projects.

Past Ideas for Potential DSpace GSoC projects

We have archives of all our Past GSoC Ideas Pages still available for reference/ideas. However, you should check with the available mentors before suggesting any of these older project descriptions. In many cases these projects may no longer be applicable, or may require rethinking to bring them up to date.

  • No labels