Skip to main content

Introduction to Building CHT Applications

This course offers basic understanding of technical details to develop simple Community Health Toolkit (CHT) applications.

About This Course

This course offers basic understanding of technical details to develop simple CHT applications.

This course focuses on CHT application building and is targeted more towards CHT application developers. The course contains various modules where each module covers different topics and contains video tutorials, quizzes, exercises, and other resources.


It is expected that learners are familiar with Community Health Toolkit (CHT). In addition, to build applications with the CHT Core Framework the following skills are helpful, ordered by importance:

XLSForms and XForms

Many workflows in your application, including completing tasks and creating contacts, will be generated using ODK XForms. Many app developers use XLSForms as an easier way to generate XForms. A strong knowledge of XLSForm standard is very useful in building your own application.


JSON (JavaScript Object Notation) is a format for storing structured text. Understanding JSON will help with minor modification of existing applications.


Many key aspects are defined with JavaScript code and expressions. This includes managing profile pages, creating tasks and targets, and setting the condition for when to show forms. Unless you are only doing minor modification to an existing application, a good understanding of JavaScript is required.


A free and open source NoSQL database we use to store all our data, configuration, and even the application code. CouchDB is really good at replication which is the process of sending the data to another database, such as PouchDB in the client application, and back again. Although building your own app using the Core Framework does not require knowledge or experience with CouchDB it can be useful to be familiar with general concepts as a document store.


Although the application you build uses a NoSQL database, a parallel PostgreSQL database is available in the Core Framework to make querying data easier. Familiarity with SQL is needed to set up and query the database.

Frequently Asked Questions

Where can I find more details and documentation on tutorials?

For more details on tutorials, please visit CHT documentation website which contains most up-to-date information.

Where can I ask the questions about CHT?

If you want to learn alongside with other CHT user or have any question, please join our CHT forum and let us know how we can help!