Although the Treasure application is a simple game, it needs to provide some standard features so that it will run correctly in the phone environment. It also needs to include files containing metadata so that it can be packaged and installed properly. Much of this is taken care of by the tools you will use to create an application. In this section we will look at the directory structure of the example and explain how the application is put together.

The root directory of the application contains the following directories:

Name Purpose
build-aux Helper scripts for configuring and building the application.
data Resources such as icons, images and metadata files.
See Data Files for a description of this directory.
docs Source files for the documentation.
po Translation files for localization of the application at run-time.
See Translations Directory for a description of this directory.
src Source code for the application, including executables and modules.
See Source Files for a description of this directory.

It also contains the following files:

Name Purpose
COPYING The license file for the application.
Makefile Used for building the documentation.
meson.build The main build file for the application.
README.md A description and instructions for the application.
com.example.treasure.json A Flatpak manifest file, used for distribution.

Since the application uses the Meson build system for configuration and build tasks, we find a meson.build file in the main directory. Other meson.build files can also be found in subdirectories.