GSoC/GCI Archive
Google Summer of Code 2013

Sahana Software Foundation

Web Page:

Mailing List:

The Mission of the Sahana Software Foundation is to help alleviate human suffering by giving emergency managers, disaster response professionals and communities access to the information that they need to better prepare for and respond to disasters through the development and promotion of free and open source software and open standards.


  • Automatic Test Framework Given the fast movement of code-base for Sahana Eden and the critical use of Sahana Eden during various disasters, there is a need to setup a robust testing framework. This project outlines the setup of a continuous integration server which will test Eden on a daily basis and send the report via email.
  • Demo Instance(s) of vesuvius Demo instances of Vesuvius aims at providing the potential adopters of the Vesuvius system a test run before actual deployment. In this way the adopters can check out all the facilities that Vesuvius has to provide.
  • Disaster Specific Resource Page An infrastructure to allow instances of resource pages to be customizable for specific disasters, in association with multiple languages. Currently in the Vesuvius system resource pages are not associated with events. So this project aims at creating an approach through which disaster specific resource pages can be created.
  • Merge Kilauea and Vesuvius Trunks Full merging of Vesuvius and Kilauea code bases into single trunk. Deployment settings (like Eden) will determine front-end functionality (missing persons, shelter registration, staff registration, etc.). This would greatly broaden the potential user base for both of these products, which otherwise will remain highly customized for a single customer and likely not adopted by other organizations.
  • Native Synchronization between Vesuvius Instances Instances of Vesuvius (say, in different cities or hospitals) can currently interchange missing/found person data using the PFIF protocol, but that exchange is lossy and requires a Google Person Finder go-between. The proposed task would implement direct lossless two-way interchange. The should be multiple exchange channels to support fault tolerance (e.g. if there is no network or just a USB connection)
  • Portable App Dynamic Creation for Vesuvius Platform A portable application for Sahana Vesuvius platform can be deployed into a portable device (typically application files will be stored on a fast flash drive) which is not necessarily connected to the Internet. A user can directly launch the portable app without any pre-configuration or installation of any software (Apache, MySQL, PHP). The user will be able to work on Vesuvius in offline mode (no Internet connectivity). This portable app is essentially a portable AMP stack and Vesuvius PHP code deployed to ‘www’ root in the portable app. It acts like a local server in a host device and if WiFi/Bluetooth support is enabled in this device (which is the usual case for portable devices), other nearby WiFi/Bluetooth enabled devices within the communication range are able to connect to the host device which runs a local instance of Vesuvius (let’s call it child instance). One of the important features of the portable app is the data synchronization of missing/found persons with the statically deployed Vesuvius instance (let’s call it parent instance) whenever a stable network connection is established between the child instance and the parent instance.
  • Search Project The aim of this project is to enable users to search text/strings into the uploaded reports/documents. The use of this project it that when a users want to find relevant information inside various documents, (or search in all documents) then using this he could find the corresponding records and documents which adds to the functionality to Sahana Eden. Also, as a follow-on project, for some agencies, we would provide the functionality for global search. This will indeed search through all the resources and will output the results in a categorized form.
  • Simplifying ImageStats Code "ImageStats" is a web-based tool to collect facial and skin annotations from images. The collected data is used as established ground truth information to develop and improve face-detection and face-matching algorithms. It is developed at National Library of Medicine (NLM) to help R&D in the field of image processing. ImageStats was rapid-prototyped from a number of open source components, among them Vesuvius, GWT, GXT, GWT-Graphics, Tomcat, Mysql, and SOLR. The current implementation is very much complicated in terms of structure and has a number of dependencies. The motive of this project is to reimplement ImageStats in a simpler manner so as to make the application open source and standalone. This will make the application open to other open source developers for improvements and changes.
  • Translation This project is to improve the current translation functionality of Sahana. This will include the following features: * Excluding Deprecated Strings * Retrieving strings from active templates * Including Prepop Csv files * Pootle Integration * Conflict in strings due to pull requests * Avoiding system calls in Translate Toolkit.