Development Gateway is pleased to announce the release of AMP Offline 1.0 – an offline client application for our flagship Aid Management Platform, available for all clients with AMP 3.0.
AMP has a strong record of independent country ownership, and the Offline tool will further enable progress towards full AMP usability and sustainability. In continuing to build AMP Offline, we will use feedback from each integration in each new one, and will continue to share our experiences on the blog in the coming months.
Figure 1: AMP Offline Dashboard
Through AMP Offline, we aim to enable users with limited or unreliable internet connections to successfully and seamlessly browse, add, and update activity data in AMP. Further, AMP Offline will enable them to do so with fast response times and limited traffic usage. In many developing countries, connectivity issues makes it complicated for users to use web-based data systems, and many of our partners have requested a solution which allows them to work with their data when internet is unavailable. Offline functionality is focused towards prioritized client needs, and DG will continue to push enhancements as we develop new versions.
Offline Synchronization and Functionality
As for how the application works, once it is downloaded, the installer sets up all routines, images, and files needed to render the app on the local machine. The application will then synchronize all data between AMP Offline and the AMP platform itself.
Figure 2: AMP/AMP Offline Synchronization Process
The synchronization will exclusively exchange the data itself (activities, workspaces list, currency exchange rates, etc.), without any other online files required. Though the first synchronization may be slow (depending on connectivity), each one is faster than the last — as the synchronizations will become incremental, and the application will begin only having to sync new data. When using the application to browse, add, or update activities, no internet traffic will occur at all.
For users with slow internet connections, AMP Offline loads faster than AMP itself, because:
- screen rendering files are not sent using the internet (even on the original page load);
there are no requests for content data made on the original page load or while performing a page action.
A user can install AMP Offline on a laptop, sync up data locally, then work offline from anywhere (with or without an internet connection). Once connectivity to the AMP server becomes available, the user pushes local changes (as data only) to the main server.
Figure 3: AMP Offline User Workflow
While using AMP Offline, users should sync data regularly to avoid conflicting edits done by multiple users on the same activity. Additionally, doing so ensures that users are seeing the most recent version of AMP Offline. To remind users to sync up, the application will show “sync up alerts,” as well as force the user to do so after a certain number of days (currently set to two weeks) — to avoid stale, counterproductive local data.
Other Features of AMP Offline
The AMP Offline 1.0 release includes the following main features:
- Multi-user Support
Prebuilt Tabs for activities search / preview / edit
AMP Offline Update
Out of the above, new features include Data Synchronization and automatic AMP Offline Update. For the automatic AMP Offline Update, DG built an AMP Registry application to provision AMP with new Offline installers. AMP will periodically check the Registry for new installers and upload them to the server. Each time the user launches AMP Offline, the user will be notified of available updates. Once the user proceeds with the upgrade, the application will automatically complete the entire process, while preserving existing user data.
AMP Offline uses the AMP API to synchronize data or check for updates. The synchronized data is transferred in GZIP compressed mode, relying on a secure SSL API communication configured on the AMP server. To avoid too many small requests, some data is pulled in bulk. For AMP Offline support, we built a new synchronization API as well as extended and enhanced the existing Activities and Authentication API in AMP 3.0.
Figure 4: AMP Offline Components
How We Built AMP Offline 1.0
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.
AMP Offline is available for many major platforms, including Windows 7+, Mac OS, and Linux (Debian and Redhat based). Windows installers are EV Code signed by GlobalSign using Microsoft Authenticode Technology. This signature verifies that the code hasn’t been tampered with and assures code authenticity. It also registers AMP Offline with Microsoft’s automatic SmartScreen® Application Reputation, avoiding unnecessary security alerts for the user. Similarly, Mac OS installers are signed with DG’s Developer ID in the Apple Developer Program, allowing Mac OS Gatekeeper to verify that the application is not a known malware and has not been tampered with.
We look forward to continuing to innovate and iterate on AMP Offline 1.0, as well as build other applications that push forth AMP as a broadly applicable tool. And in the coming months, we will share updates and lessons learned from the rollout of AMP Offline. Stay tuned for more!
Representatives from Development Gateway: an IREX Venture (DG) will be attending the African Green Revolution Forum (AGRF) from September 5-9 in Kigali, Rwanda to highlight two projects: the Visualizing Insights on African Agriculture (VIFAA) project and the Farmer-Centric Data Governance Models project.
In Episode 2 of "Data…for What?!," a podcast series from Development Gateway: an IREX Venture (DG) which explores our new strategic plan, Josh Powell met with experts from DG and IREX to discuss DG’s expansion into the education, media and disinformation, and youth sectors. The conversations explore the most pressing challenges and greatest opportunities for data and technology to positively impact these sectors and discuss how these trends are likely to play out in the years ahead. Based on these trends, the experts explain the unique fit for DG’s skills and specific opportunities for collaboration that align with the vision of DG’s partnership with IREX, which has a long and successful history working in each sector.
To help contextualize the new Strategic Plan, we are launching a podcast series called Data… for What?! This series consists of 5 episodes in Josh Powell and Vanessa Goas talk to DGers throughout the organization – as well as collaborators within our strategic partner, IREX - about how and why we prioritized the various elements of the new strategy. In this first episode, we talk to Kristin Lord, President and CEO of IREX about how our partnership fits into the Strategic Plan; and to Aleks Dardelli, Executive Vice President of IREX and Chair of DG’s Board of Directors, about the process of putting the Plan together at this opportune, yet precarious, global moment.