Child pages
  • Fedora Summer of Code Ideas
Skip to end of metadata
Go to start of metadata

Ideas for Potential Google Summer of Code 2012 projects

Looking for GSoC Information for the Red Hat-Sponsored Fedora Project?

Icon

This is a different Fedora. If you were looking for the other one, please see https://fedoraproject.org/wiki/Summer_coding_ideas_for_2012.

Add your ideas here!

Icon

Please add your suggestions for GSoC 2012 projects related to the DuraSpace-Sponsored Fedora Repository Software!

Summary

Fedora Roadmap Themes

Detailed Description

Mentor volunteer(s)

DSpace / Fedora Integration Projects

DSpace with Fedora Inside

Several Projects in the DSpace community lean heavily on exploring the integration of DSpace and Fedora. This slot is a placeholder to link these projects together...DSpace Summer of Code Ideas#GFDAO


 

Standard SPARQL Protocol Endpoint

Semantic Web, Standard Interfaces, REST API

This feature would provide a standard, discoverable SPARQL protocol endpoint for Fedora repositories as an alternative to the Fedora-specific RISearch web interface. For more information, see FCREPO-533.

Mentor Needed

Support for Memento (X-Accept-Datetime) in Fedora's REST API

Standard Interfaces, REST API

The Memento framework aims to make browsing the web's history easy through the use of extended HTTP headers and browser awareness of such headers. This feature would add Memento capabilities to Fedora's REST API to make it possible for such browsing to occur over the resources stored in a Fedora repository. We do have an early implementation of such capability for Fedora, but it was never integrated into the baseline. Fedora's code and the Memento specification has changed since then, so an up to date implementation is needed. For more information, see FCREPO-604.

Mentor Needed

Javascript REST Client Library

User Interfaces, REST API

This project would develop a Javascript library to be used by user interfaces that work directly against Fedora's REST API. Something similar to the cloudsync-client.js library for CloudSync, but for the Fedora REST API.

Mentor Needed

Modern Web-based "Administrator" UI for Fedora

User Interface, REST API

There are currently two Administrator user interfaces that come with Fedora: One that we have had for many years is a Java Swing-based GUI and the other is an Adobe Flash-based UI. Neither UI is ideal -- The Swing-based UI requires deploying a Java application on users' desktops, and the Flash-based UI has proven difficult to maintain and less accessible. This feature would revamp Fedora's Administrator UI to be a more pure HTML/Javascript application that takes advantage of standard features of modern browsers. It may use signed java applets or Flash in limited contexts (such as multi-file uploads), but should be primarily based on modern Javascript/HTML features and libraries such as jQuery.

Mentor Needed

Deploy standalone webserver on localhost for integration testing

Integration tests: SOAP API, REST API, Disseminations

There are currently a number of integration tests that rely on network access to resources served by external web services.  Additionally, there are a number of bugs and features that address Fedora backend HTTP client/server transactions (disseminators that retrieve content from external web services, external datastreams, etc.), but there is currently no automated way to test these transactions.  This improvement to the integration test suite would start up a web server on localhost on a high-numbered port and serve up a number of test resources, which integration tests could then use to test interactions with external web services.  This web server would only be part of the integration test suite, and would run only for the duration of the tests.  As a side benefit of this improvement, all tests could be run, regardless of whether the host machine is connected to the network or not.

Mentor Needed

  • No labels

1 Comment

  1. The JS/REST client is an obvious precursor for the new admin UI. Perhaps we can factor them together and offer a two-part project with a viable stopping place in the middle? That might be attractive to some GSoCsters...