Android & Web App Development Academy 2021
Workshop 1: The Basics
Originally hosted March 17-18, 2021
In this hands-on 2-day workshop, participants learned how to build high-quality, maintainable DHIS2 Android and Web applications using the latest tools from the core team.
Android Track
Session Recordings:
- Android SDK Overview
- Skeleton App Overview
- SDK Installation
- Data Access Layer
- DHIS2 Data Model REST API and Android SDK
- Data Access Layer & TrackedEntityInstance search
- Tracker Data Creation & Upload
- Error Management, Sync errors & Data Integrity
- SDK Roadmap & What's next
Web App Track
Session Recordings:
- Introduction and Logistics
- Application Development Overview
- CLI Installation and assignment
- UI Library, Design system and Storybook documentation
- DHIS2 Data Model REST API
- App Runtime Introduction
- App Runtime: Data Queries & Mutations
- Web App Q&A and intro to Project 1
Slides:
Workshop 2: Advanced
Originally hosted May 4-7, 2021
Android Track
Learn how to use the different capabilities of the DHIS2 Android SDK to build fully reliable DHIS2 Android applications compatible with many DHIS2 versions. This workshop focuses on how android developers can use the SDK to sync metadata and data following the best practises while preventing sync erros. Also, among other topics, it covers how to use the validation rules and program indicators engines to perform data quality and analytic tasks.
Session Recordings:
- Day 1: Recap and Logistics
- Debugging and Data download
- Data states and Aggregated data: dataSetInstances
- Aggregated Data creation
- Validation Rules
- Aggregated data upload
- Tracker: Data Creation
- File Resources
- Rule Engine and Utility classes
- Direct database interaction and DHIS2 compatibility
Web App Track
Learn more about the App Runtime and how to use advanced hooks and techniques to interact with the DHIS2 Web API. This workshop will also focus on how to build generic DHIS2 web apps and how to use tools such as i18n for translations and the DHIS2 data store. These sessions also include application performance and security tips and best practices. Learn more about testing DHIS2 web apps and how to publish your apps using the App Hub.
Session Recordings:
- Advanced App Runtime - Review mutations, handling loading, error states, refetching data. Learn about dynamic queries and variables and how to useDataEngine and the Alerts Service for showing alerts
- Making Apps Generic - Overview - How to build generic DHIS2 apps. Learn about available tools such as translations (i18n) and how to use the Data Store.
- Translation tools - i18n
- Data store
- Review: Translation and Data Store exercises
- App Security - Learn how to follow security best practices
- App Performance - Using explicit fields and collection pagination, reducing bundle size
- App Hub Overview - Publish workflows, App Hub guidelines and updates
- App Testing - End-to-End tests - @dhis2/cli-utils-cypress, unit tests with jest
For more information on exercises and other resources, please check the Web App Academy 2021 repository.