Folder Structure

Folder Structure

In this section, we will describe the folder structure of the project. Here is a look at the folder structure after installation:

  • Apps

    The apps folder contains all the apps that are installed on the device. Each app is a folder with the app name. The app folder contains the app's config file and it's docker-compose.yml file.

    You can edit the config file to change the app's settings. However, those changes will be overwritten when the app is updated. If you want to make permanent changes to the app, look at the Customize app config section.

    App Data

    The app-data folder contains all the data of the apps. It is the default location if there is no storagePath defined in the settings.json file (see Custom settings) Each app has it's own folder with the app name. And all the data of the app is stored in this folder. (e.g. app-data/nextcloud/data)


    The logs folder contains all the logs of the apps. The logs are seperated into 3 files

    • error.log
    • app.log
  • The error.log file contains all the errors that are thrown by the app. The app.log file contains all the logs that are printed by the app.


    The media folder contains all the media files that are uploaded to the device. (e.g. images, videos, etc.) media folder is an exception to the rule that all the data is stored in the app-data folder. This is because the media files are not app specific and can be used by multiple apps. For example the *arrs apps use the media folder to store the downloaded media files.


    The repos folder contains the app store repositories. Each repository is a folder with the repository id. If add a custom repository in your settings.json file, it will be downloaded to this folder and consumed by the dashboard.


    The state folder contains the state of your instance. It contains the settings.json file which contains the custom settings of the installation alongside some other files necessary for Tipi to run.