DuraSpace GSoC Ideas List
This Ideas list provides a summary of GSoC ideas from across all DuraSpace technology platforms. Please note: not all of the DuraSpace platforms may provide projects for a given Google Summer of Code. As each platform has its own separate development community, it all depends on whether volunteer mentors are available during a given year.
The ideas below are separated by DuraSpace technology platform.
DSpace GSoC 2014 Ideas List
The DSpace platform offers the following Google Summer of Code project ideas. If you would like more information about DSpace or about any of these GSoC ideas, please feel free to contact the DSpace Developers by any of the following:
- DSpace Developers Mailing List (requires signup): http://lists.sourceforge.net/lists/listinfo/dspace-devel
- DSpace IRC: #dspace on the 'irc.freenode.net' server
- More information about the DSpace Developers' strategies for successful GSoC projects: DSpace Summer of Code
- More information about DSpace in general can also be found in the latest Documentation: DSpace 4.x Documentation
Project Title | Description | Mentor Volunteers |
---|---|---|
File format validation with DROID and JHOVE | When a file is currently uploaded in DSpace, its file format is guessed by looking at the file extension. This means if I change the extension ".exe" of a file containing a virus to ".pdf", DSpace will not have a clue what's going on and identify the file as a PDF. You can make this more robust by working on the class FormatIdentifier. The student is expected to work on this class to handover the task for format identification to a library like JHove, DROID, or both. Minimal viable work:
Extra kudos:
GODLIKE:
Difficulty level: Easy | |
TranslateWiki Integration | The DSpace community has approached TranslateWiki.net (TWN), the mediawikibased platform for interface translation of open source projects. The initial discussions are promising and the TWN community is currently building support for the Apache Cocoon message format that is used by XMLUI. We need an ambitious GSOC student to connect the dots, working with both communities in extending the integration and ensuring that in the end, the threshold is lowered for external translators to provide interface translations for DSpace. Related Links: Related DSpace Components:
Recommended Skills:
Difficulty Level: Medium | Bram Luyten (Atmire) |
Virtual Sets: Separate the internal repository structure from the navigation structure | Currently, the hierarchical structure used in DSpace allows sharing items between collections by explicitly declaring these relations on each item. However, DSpace does not allow to relate a collection or a sub-community between two or more communities. Virtual Sets are arbitrary aggregations of DSpace Objects and criteria, composed of:
Virtual Sets in DSpace would allow the creation of complex navigation structures regardless of the hierarchical (perhaps administrative) structure of communities and collections. Structures, as described above, are supported in at least another repository software such as Fedora-based Hydra due to its generic object model. The initial implementation would affect the dspace-api component and either of the web UIs, since both now use Discovery (Solr) by default. Virtual Sets should be implemented at the dspace-api level for DSpace Objects to offer more orthogonal features like Virtual Sets backup, export and exposure through OAI-PMH. Stretch goals would include making use of Virtual Sets in other interfaces like REST and/or OAI. Related links: Related DSpace Components:
Recommended Skills:
Difficulty Level: High | Ivan Masár |
Create a puppet-dspace module | Develop a Puppet-DSpace module for deploying DSpace, and provisioning DSpace-related services. The goal would be to deploy on at least one popular Linux OS, and likely the target will be Debian/Ubuntu since testing will be done with Vagrant-DSpace, which currently uses only Ubuntu. The final product should be useful for deploying DSpace to a cloud infrastructure, or really any server configured to run Puppet (in other words, the module should make no assumptions that rely upon paths used by Vagrant). A stretch goal for this project will be to make the puppet module OS-agnostic, and have it run on both Debian/Ubuntu as well as CentOS/RHEL. But just meeting the Ubuntu target would be sufficient for this project. The puppet module already built for use in Vagrant-DSpace would be a great starting point. The module, when complete, should enable an operator to go from a standard OS base image to a running instance of DSpace, complete with a container to host the application, and (optionally) a PostgreSQL database for metadata. Related DSpace Components/Links:
Recommended Skills:
Difficulty Level: Medium |
|
Next-gen UI | MDS is an experimental offshoot of DSpace in which new ideas may be prototyped and examined. Recently a REST API (with CRUD operations, etc) has been added to MDS. A valuable 'proof of adequacy' is building an entire functional web UI backed only by the API. The goal of this project is to construct such an admin UI for MDS, using a modern, agile web application framework. A proof of concept using AngularJS already begun could serve as a basis for further work. Related DSpace Components:
Recommended Skills:
Difficulty Level: Medium to High |
Fedora GSoC 2014 Ideas List
- Fedora will not be participating in GSoC 2014.
DuraCloud GSoC 2014 Ideas List
- DuraCloud will not be participating in GSoC 2014.