January 2025 Round-up call Recording and Notes
Thank you all for joining our January 2025 Round-up call. You can catch up the highlights by watching the Round-up recording. Please see the summarized notes from the call below.
Agenda 1: CHToolbox for development automation and testing
CHToolbox is a command-line utility (running on NodeJS) for CHT development and testing. The goal is to provide a platform that makes it easy to create and share utility scripts. Some of the features of the toolbox include:
- Complete purge of docs from a database.
- Updating a CHT instance on the command line.
- Stream a live feed of Couch’s active tasks right to your terminal.
Most CHToolbox commands are targeting a particular CHT instance. The instance URL must be specified when running the commands. To run CHToolbox locally, we require Docker and Docker compose with the chtx
instance command used to deploy and maintain local CHT instance. Other features include monitoring an instance and upgrading a CHT instance via a command line.
There was a demo of the above features followed by a discussion on where this can be applied in production or on a test instance due to the potential risk of changing the entire reference database of the system.
See recording for more details.
Agenda 2: Researching total cost of ownership around disk space
There is ongoing work on reducing the total cost of ownership (TCO) using Couch Nouveau. We used a test generator on couchDB to test how we could reduce the cost and also used CHToolbox to track the actual/total disk space metrics. The research and code were not released but the findings are publicly available. Community members are encouraged to review this code and share their ideas on the repo.
See recording for more details on disk space monitoring.
Agenda 3: CHT Language Support and adding Right to Left Language Support to CHT
CHT supports multiple languages and there are two categories of languages that are supported by CHT, these are; languages that are bundled within the CHT (translations for these languages are supported and maintained by the community) and custom languages which are added to specific project instances and supported by specific Project Maintainers. Adding a new custom language to the CHT involves a few simple steps that are well documented and are done through configuration. One can add a new language using the admin configuration page and the translations also need to be added using cht-conf. After adding a language, it will appear in the language selector and through the user settings page in the webapp. Adding a new bundled language to CHT does require a new CHT core release, for the custom language the Project Maintainer is responsible for new translation since new translation keys are added to almost every CHT release. There are exceptions like Nepali language which is already supported by CHT, Nepali uses a custom calendar which is called bikram sambat, adding full support for Nepali language required CHT core UI changes.
Currently, the International Committee of the Red Cross (ICRC) and Medic teams are working together to add Arabic translations to the CHT. Arabic language uses a different alphabet and it is also written from right to left. To support Arabic the teams have worked on reversing various CHT elements including texts, icons, filters, buttons and the UI. This is still work in progress and it is expected to be tested before it is released as part of the next CHT core release.
Thank you for your continued support in keeping our community engaged and informed. We look forward to your continued support and collaboration.