March 2026 Developer Meetup: Accessibility 101, App Competition, Custom DHIS2 App Templates

Hello everyone!

For March’s developer community meetup, happening 2026-03-12T10:00:00Z, we have several interesting things in store for you:

  1. The Annual App Competition: before the meetup, we’ll publish an announcement for this year’s DAC App & Extension Competition. We’ll talk about the process, how we evaluate extensions to narrow them down to a top 3, and highlights from previous years. We hope to see your extensions! :slightly_smiling_face:
  2. Accessibility 101: Our designer at DHIS2, Joe Cooper (@joecooper), will present some of the most important principles to follow when developing apps to make them accessible and usable to as many users as possible. Accessible interfaces ensure the effectiveness of a product, and can sometimes be part of project requirements for extensions. He’ll cover keyboard navigation, use of color, contrast, and other principles that are key to making accessible interfaces, and take time for questions and discussion :artist_palette:
  3. Community contribution - Custom DHIS2 app templates: Derrick IRADUKUNDA (@derricknuby) from HISP Rwanda recently contributed a new feature to the DHIS2 developer tools: the ability to use custom app templates when bootstrapping a new app with the DHIS2 CLI tools. For example, he’s created a template that builds in the use of the Tailwind CSS framework. Derrick will share about this useful new feature and his experience developing it :clap:

To register for the meetup, please click this link. Upon registering, you will receive a DM on the CoP with the Zoom link for the event, and you’ll receive an email with a calendar invitation for the time slot. If you have registered before, you can use the same meeting link.

Looking forward to seeing you there!

@Developer_Meetups

9 Likes

Thanks all for joining, and special thanks to @derricknuby for presenting! Here’s the recording and some relevant links from the session :slightly_smiling_face:

(Joe could not join this time, so “Accessibility 101” will be postponed to another meetup)


2 Likes

Hello,

My name is Deka Primatio Deandra, representing the Jakarta Provincial Health Office (Dinas Kesehatan Provinsi DKI Jakarta), Indonesia. Since 2022, our office has actively collaborated with the University of Oslo and HISP, fully adopting DHIS2 to manage a health network of 332 Community Health Centers (Puskesmas) across the capital.

I am keen to participate in the upcoming DHIS2 App Competition. My objective is to contribute a tool designed to solve common infrastructure and deployment challenges faced by implementers globally.

Before finalizing my submission, I would appreciate clarification on the following:

  1. Language Requirements: Is it mandatory for the User Interface (UI) and supporting documentation to be in English for judging purposes, or is a localized version (Indonesian) acceptable?
  2. Submission Categorization: I am developing an integrated framework that orchestrates multiple community-standard tools with significant proprietary enhancements. It features entirely new functionalities developed from scratch that do not exist in current implementations. Should this be submitted as a “New App” or a “Major Update/Refactor” of existing concepts?
  3. Distribution Criteria: Does a public repository link meet the “distributed” requirement? Additionally, is hosting the installation package on our Official Health Office portal acceptable, or is App Hub hosting a prerequisite for the competition?
  4. Optimizing for Low-Connectivity: One feature involves a resource-caching mechanism for health units with unstable internet access. This allows for local delivery of essential system components. Are there specific security protocols or licensing guidelines regarding the localized redistribution of system assets?
  5. Automated System Configuration: The application includes a module for Standardized Metadata Deployment (e.g., automated generation of configuration templates). What are the recommended security best practices or API standards to ensure system integrity during automated metadata injection?
  6. Alignment with Roadmap: Beyond these technical points, we welcome any advice to ensure our platform aligns with the DHIS2 Global Roadmap to provide maximum benefit to the broader community.

Thank you for your time and guidance. I look forward to contributing to the DHIS2 ecosystem.

Hi @Deka_Primatio_Deandr, thanks for the good questions!

  1. Language requirements: Realistically, having English language will indeed help us evaluate the extension (…and will probably have an effect on voting too). In the worst case scenario… still submit your app/extension, and we’ll see how well we can review it! I’ll send you a message about options. Translatability is considered a part of localizability for the “Generic” criterion though, which is something we look for; there’s some guidance for how to start that if using the App Platform here, and then translations can be added like this example file
  2. Submission categorization: That sounds like a “New app” – don’t worry too much about the categorization though :slight_smile:
  3. Distribution criteria: The App Hub is not a prerequisite, but it wins the submission points! The extension can be distributed in a variety of ways, but remember that Usability is one of the evaluation criteria – extensions that are easy (and safe) to consume and set up win points in that category.
  4. Optimizing for Low-Connectivity: It’s good that you’re thinking about security protocols for locally-cached information. Metadata isn’t generally considered sensitive; for Tracked Entity data, encryption at rest is best. I’m checking with the developers that work on the Capture web app and the Android Capture app about how they manage that, and I’ll get back to you
  5. Automated System Configuration: This is a deep subject, and a bit hard to go deep without knowing more specifics about your use case – some basic tips include:
    1. If using scripts to edit metadata with the API, use API tokens with limited authorities, held securely, and revoked after use.
    2. If you’re injecting metadata into existing instances, a management flow like a “git branching flow” is effective:
      1. Make a copy of a production instance – this will become the “staging” instance (analogous to a feature branch)
      2. Apply changes to the “staging” instance and test to make sure it works
      3. Then you can copy the configuration of “staging” to production
    3. It may be appropriate to make a new thread here to open a discussion about what use case you’re working on and how it can be approached :+1:
  6. Alignment with Roadmap: Thanks for thinking of this! On the core team, we are indeed looking at how to improve ease of deployment and infrastructure set-up and maintenance. If you want to share more about what you’re working on (which you’ll do in a way when you submit the extension form for the competition), we can look at how this matches initiatives in the core roadmap!

Thanks for your interest! There are a few things I’ll follow up on, but we’re very interested to see your extensions :slight_smile: Feel free to ask any more questions, and we’ll be in touch!

1 Like