Contents
DSpace and Google Summer of Code
Student applications are accepted Mon, March 29, 12pm PDT – Fri, April 9, 12pm PDT.
Please spread awareness of this program and DSpace among your best students! Point them to:
- Google Summer of Code Documentation Site
- Google Summer of Code Application Site
- DSpace 2009 project at GSoC site
- DSpace's Google Summer of Code – visit here for a list of interested mentors, information about our IRC channel, mailing lists, etc.
Ideas for Potential Google Summer of Code 2010 projects
DSpace REST API
Continue integration of DSpace REST services for DSpace 1.x and 2.0
Comment: The REST support for DSpace has been done by me during GSOC09 and is available in repository. Currently it is not fully integrated in DSpace and extensively tested, by I am planning to do it soon at least for integration as there was limited interest among developers during GSoc to test/suggest – Bojan 21:42, 10 March 2010 (UTC)
Database Driven Configuration
dspace.cfg to be migrated into the database (so dspace.cfg holds nothing but db connection details, and maybe email server settings, and changes can be made without requiring DSpace restarts)
Mentor Comments
There are two types of configuration present in the dspace.cfg, configuration properties and application context configuration for the Plugin Manager. It would be good to see these classified and separated.
- Simple Properties Configuration should be moved into the ConfigurationService and a ConfiguratonService provider should be created to manage database based configuration values.
- ConfigurationService API http://scm.dspace.org/svn/repo/modules/dspace-services/trunk/api/src/main/java/org/dspace/services/ConfigurationService.java
- Implementation http://scm.dspace.org/svn/repo/modules/dspace-services/trunk/impl/src/main/java/org/dspace/servicemanager/config/DSpaceConfigurationService.java
- Implement DSpaceDatabaseConfig based on DSpaceConfig http://scm.dspace.org/svn/repo/modules/dspace-services/trunk/impl/src/main/java/org/dspace/servicemanager/config/DSpaceConfig.java
- Maintain Defaults in classpath resources: http://scm.dspace.org/svn/repo/modules/dspace-services/trunk/impl/src/main/resources/config/dspace-defaults.properties
- Application Context Configuration (associating Classes and Wiring Dependencies) should be moved to the new Spring configuration found in the DSpace Services.
- Core Services go into Spring Configuration: http://scm.dspace.org/svn/repo/modules/dspace-services/trunk/impl/src/main/resources/spring/spring-dspace-core-services.xml
- Addon Services loaded by secondary Spring configuration in each application (xmlui, oia, sword, etc). http://scm.dspace.org/svn/repo/dspace/trunk/dspace-xmlui/dspace-xmlui-webapp/src/main/webapp/WEB-INF/spring/applicationContext.xml
--Mark Diggory 15:18, 31 March 2010 (UTC)
DSpace 2.0 Back-porting
- Migrate Plugin Manager to DSpace Services
- Migrate DSpace EPerson/Group to User Service
- Port Storage Services API to DSpace 1.x
Mentor Comments
- For Migrate Plugin Manager See Database Drive Config --Mark Diggory 15:26, 31 March 2010 (UTC)
Integrate DSpace with Social Networking Services
Commenting Feature for DSpace
Ability of users to add comments to archived items
Customizable User Registration
Ability to customize registration process
JSF User Interface Implementation
JSF implementation of the DSpace user interface.
Community Tools and Community Trends - Visualization of Author Association in DSpace.
DSpace Discovery Projects
DSpace Discovery is Solr based Search and Browse for the DSpace XMLUI. We do not yet have a project space/website/wiki ATM, but are rapidly evolving. We have many opportunities for new projects and activity At many different levels. Replacement of Lucene by SolR(J) to index + retrieve metadata and full text. Demonstration with Ajax SolR as an UI.
- AJAX Integration: http://github.com/evolvingweb/ajax-solr http://solrjs.solrstuff.org/
- Integration With DSpace REST project for unified Search and Browse in the REST webapplication as well.
- Access Control Request Handler for Solr Access control for Solr Service, Documents and Fields.
- General specifications
- FieldType JAVADOC
- Predefined FieldTypes in SolR
Integrate JSON driven Javascript enhancements to Discovery
Utilizing http://wiki.github.com/evolvingweb/ajax-solr/reuters-tutorial-step-9 Integrate AutoSuggest, Tag Clouds, Google Maps and dynamic Paging into DSpace Search Results.
Metadata Tracings
Enable tracings on such metadata fields as dc.contributor.author, dc.subject, etc. to launch a faceted repository search for the metadata value from within another item or search results list (i.e. clicking 'Albert Einstein' in the author field display of one item would search the repository for all occurrences of 'dc.contributor.author=Albert Einstein' in the repository). Would be best if it allow aggregating facet values that had been previously selected (new search) vs (add to existing search)
Integrate with DSpace 1.6.0 Authority Control
Integrate Plugin to use Discovery as a source for "default" Authority Control / Autosuggest for DSpace. See also #Stackable Support of Naming Authority Tools
Access Control
Build Proxied SOLR search service for exposing JSON and XML search responses while allowing access control and filtering of search results based on users permissions.
This includes exposing OpenSearch, Media RSS and JSON of search query results.
Authority Control Related Projects
Stackable Support of Naming Authority Tools
Write Plugins for the Authority Control Service which support possible Authorities (Sources: LDAP, JDBC, DNS, XCat/OCLC/Barton, Google Scholar etc, GFR, HIVE and other SKOS Metadata Registries).
At the moment metadata is not controlled (apart from controlled vocabularies) by any authority tool. There are a lot of national (mostly based on national libraries) tools and some international projects like VNAF in this area. Enabling metadata field based stackable integration of tools for ingest would increase the qualitiy of metadata and facilitate a lot of other tasks, like reporting and evaluation etc.
Past GSoC Projects
2009
- Google Summer of Code 2009 Submission Enhancements Gaurav Kejriwal
- Google Summer of Code 2009 Fedora Integration Andrius Blazinskas
- Google Summer of Code 2009 Report Generation Tool Ashly Markose
- Google Summer of Code 2009 DSpace REST Webapp Bojan Suzic
2008
- DSpace & Fedora Integration: Student: Andrius Blažinskas Google Summer of Code 2008 Fedora Integration
- Moving DSpace into the age of the Semantic Web: Student: Peter Coetzee Google Summer of Code 2008 Semantic Web
- An Add-On (Client) to facilitate the existing DSpace Batch Import Procedure': Student: Blooma Mohan John Google Summer of Code 2008 Batch Import
- New collection workflow system: De Schouwer Bram Google Summer of Code 2008 Collection Workflow
2007
- Google Summer of Code 2007 CIS
- Google Summer of Code 2007 Citations (discontinued)
- Google Summer of Code 2007 Statistics
- Google Summer of Code 2007 Versioning
- Google Summer of Code 2007 Visualizations
Past Ideas for Potential Google Summer of Code 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.