AMP Offline Joins Full AMP Code in Going Open Source

March 6, 2020 Aid Management Program
Nadejda Mândrescu
News/Events, Program, Tech Stack

In line with Development Gateway’s commitment to using open-source technology, and building on the transparency and community benefits we’ve seen from opening the Aid Management Platform (AMP) source code last year, DG is pleased to announce that we’ve made the AMP Offline application fully open source.

The AMP Offline code is available under the GPLv3 license, the same license that the AMP code is under – allowing free use, editing, and full compliance with the AMP code. To get the code “ready” to go fully open-source, DG’s AMP Offline team cleaned obsolete files, updated the license and readme files, and did some refactoring for security purposes.

Throughout AMP’s history, Development Gateway has always encouraged independent government ownership over both the software code and the AMP system itself, without any start-up or recurring fees. Since the beginning, our goal has been to enable governments and developers to modify the code directly to meet changing country needs.

For example, Ethiopia’s Ministry of Finance and Economic Cooperation (MoFEC) technical and management team expressed interest in developing and maintaining new AMP features on their own. Through a knowledge transfer and source code training series completed last year, we trained the team to build AMP features on their own. Using Github, a well-established source control platform, further streamlined the ownership transfer process. With AMP Offline’s code newly public on GitHub as well, teams like Ethiopia’s will be able to independently build on and modify the module to fit their needs into the future.

Public access to the code creates an effective environment to build a community that can both contribute to and benefit from AMP and AMP Offline. Giving different AMP country teams the ability to add new code used to improve their own platforms, we’re enabling cross-country collaboration and faster tool evolution.

About AMP Offline

AMP Offline is a desktop client application for our flagship AMP platform. Since limited or unreliable internet connectivity is a challenge for AMP online usage, we developed the offline app to support full AMP usability regardless of internet connection and quality. It is one in a sequence of tools we developed to continuously add new features and UI/X improvements as part of a larger AMP Re-Engineering initiative.

Figure 1: AMP Offline access with or without internet connectivity

With almost twenty years of AMP experience in 25+ countries on 5 continents, having developed a variety of technologies and satellite tools to continually improve and modernize AMP, the Offline module represents one of the most universally beneficial features. It fulfills an important user need – to complete data input and validation from anywhere in the world, with or without internet connection. The Offline tool enables low network data consumption, quick page load, and ample offline storage.

So far, AMP Offline has been successfully deployed in Chad, Malawi, and Haiti. In each country, the Offline module has made AMP more useful, flexible, and ultimately successful – easing and accelerating the data entry process. The application’s simple and easy upgrade process enables users to receive each newly released version as capabilities expand, with seamless code and synced data migration.

A Sustained Commitment to Open Source

DG prioritizes open-source technologies to optimize development by reusing robust libraries, maintained by dedicated teams and public community and avoiding “reinventing the wheel.” The open-source AMP data is stored in NeDB – an open source, embedded, persistent database for Node.js, that is managed through a subset of MongoDB’s API. Using Electron (an open source library developed by GitHub) AMP Offline combines web technologies such as ES6, React.js (developed by Facebook) and Node.js with the speed and flexibility of native applications. Other well-known applications like Slack and Microsoft Visual Studio Code are also built with Electron.

Figure 2: AMP Offline application technical stack

Upcoming Releases

During the development, release, and open sourcing of AMP Offline, the DG team’s goal was to build a common set of modules that can be reused between AMP and AMP Offline. AMP Offline retained a familiar look and feel to AMP users, providing a visually integrated user experience. DG also updated AMP Offline’s UI for some modules, like the Activity Preview. Implementation of the Activity Preview window will be the first Offline module to be incorporated into AMP, rather than AMP into AMP Offline. This solidifies UX/UI consistency across both apps, and allows for unified future development and maintenance.

Stay tuned for new AMP Offline releases coming soon.

Interested in seeing our code? The public repository of AMP Offline can be found on GitHub.

Share This Post

Related from our library

To Enable W-SMEs to Thrive in Côte d’Ivoire We Start by Listening to their Data and Digital Needs

This blog is co-written by Development Gateway’s Aminata Camara, Senior Consultant; Kathryn Alexander, Senior Program Advisor; and MCC‘s Agnieszka Rawa, Managing Director of Data Collaboratives for Local Impact (DCLI). On June 28th, 2021, MCC, USAID, Microsoft, Thinkroom, and Development Gateway will be co-hosting a workshop to share, validate, inform, and build on recent research on

June 24, 2021  

The South Africa Tobacco Control Data Initiative website is live!

Based on a stakeholder assessment and co-design workshop used to identify critical data gaps, this website works to provide trustworthy, up-to-date information on tobacco economics, use, prevalence, and more specific to South Africa.

Explore the South Africa website

Learn more about the Tobacco Control Data Initiative (TCDI)

June 1, 2021 Health
Reducing Errors and Speeding Calculation through Automation

Armel Cyrille Brou, DCDJ Fellow in Côte d’Ivoire, provided support to the data management team at an Ivorian health facility focused on treating patients with HIV/AIDS. Armel developed an application that reduces the time spent calculating patient program schedules from five minutes to less than 30 seconds.

May 26, 2021 DCDJ, Health