GSoC/GCI Archive
Google Summer of Code 2010

Sahana Software Foundation

Web Page:

Mailing List:

Sahana is a Free and Open Source Software (FOSS) disaster management system that was originally formed in response to Indian Ocean tsunami and has grown into a globally recognized solution used by dozens of countries to coordinate their disaster response activities. It is a web based collaboration tool that addresses the common coordination problems during emergencies and disasters that provides capabilities such as: * finding missing people * managing aid * managing volunteers * tracking camps effectively between Government groups, the civil society (NGOs) and the victims themselves. Sahana is now a mature application with a solid track record of success. It has recently been adopted as the national disaster management system by the countries of Indonesia and the Philippines; It is used by the New York City to manage its sheltering plan and by Bethesda, Maryland for missing persons; It was used in China for the Chengdu-Sitzuan earthquake, in Peru for the Ica earthquake, in Pakistan for the Kashmir earthquake, in India for the Bihar floods, and in several other countries. Most recently, the Sahana Software Foundation supported the deployment of Sahana software in response to the massive earthquakes in Haiti and Chile. The Sahana Software Foundation, a non-profit organization established in 2009 to promote FOSS solutions for disaster and emergency management, now supports multiple projects in the humanitarian free and open source software space, including our original PHP project and a Python project using web2py.

Our project code repository for 2010 is here.


  • Application for spreadsheet importer project for SahanaPy This project aims to extract data from file formats such as XLS, PDF, Google Spreadsheets and HTML, validate them and then input them to Sahana database. The extracted data will be validated according to the Sahana schema. Also, a user interface will be developed to match fields, allow users to change invalid data. A system to automatically clean the data will also be incorporated into the project.
  • Automatic Synchronization between Sahana instances Automatic sync between Sahana instances has received much attention from Sahana community. It aims to sync resources between multiple Sahana instances. I will work on resolving its current issues and adding new features: (1) Make sync peer discovery work over WANs & LANs by combining ZeroConf with Beacon Service (an online directory of Sahana instances) (2) Modifying sync process to work with S3XRC resources instead of DB tables to maintain full references (3) Offline Sync facility (USB)
  • HTML/JS based reusable frontend for S3XRC The web2py crud - a backend for rest provided by the web2py framework has limitations. It can only represent/function on single table at a time. As such this creates problems for SahanaPy developers while working on compound resources. The S3XRC backend does support compound resources, provides results in JSON & XML, but it lacks an HTML interface. This summer I would like to write a reusable, generic frontend for S3XRC that solves many interesting problems.
  • Logistics Module (Logistics Site Functionality Idea with Item catalogue ) primary concern of this project is to cover up the core functionalities of the logistics. Basically, a person who logs in to the system will need ways to send Items/shipment, receive Items/shipments, request Items and monitor warehouse Items. Hence, I would implement the Logistics Site Functionality Idea along with the basic Item catalogue. These functions will fulfil the primary needs of the logistics module, allowing the proper management of logistics according to the needs of the situation.
  • Logistics Shipment Functionality Idea As Sahana is serving the community with a great disaster management system,It is trustworthy arm in point of disaster management system to have a logistic management system.As defined by the community this should be a collaborative effort composing from several sub modules. Hence the intention of this project is to facilitate Sahana logistic management system with a better logistic shipment functionality to handle items around locations as efficiently as possible.
  • OCR Module for the SahanaPy framework. This project aims to create a module that could be integrated into the currentframework where the forms could be generated anduser could upload a scanned image and then get an interface where the scanned information is displayed on the screen along with the corresponding image counterparts for the manual verification. Since training the data set is the most critical feature that affects the accuracy automated character training sub-module shall be incorporated into this module.
  • Sahana Module Manager Most of the add-on modules available when installed might not be used or may be wished not to be used or be removed as the work intended with a particular module has been done . This project would aim to develop a Module manager to manipulate the way-to-use of the modules in Sahana from installing,uninstalling and disabling modules.Also to provide Sahana with "App Store" which will be the improved version of the basic Module manager
  • Sahana OCR development The data collecting and entering process can be considered as one of the most pain full exercises with manual handling during a huge disaster situation. Therefore Sahana OCR is recognised as a great tool in solving such problems. When it comes to OCR module, reliability and consistency are major areas to be addressed. By focusing and improving these two characteristics, Sahana OCR module can be optimally utilised when ever, where ever a disaster situation occurred.
  • Survey Tool In the aftermath of a disaster or crisis, surveys are necessary to collect information in order to assess and plan recovery activities. Surveys also serve as a tool to assess the needs and vulnerability of the people whom are vulnerable; they also serve as a means to help better respond to disaster and crises. My task for this summer will be to implement a tool allow surveys to be created, entered, and saved.
  • Volunteer Management System Volunteer Management and Coordination is the most fundamental component during Disaster Management. As such, the Volunteer Management System(VMS) would provide functionality for achieving this to sahana-eden and would be comprehensive.