• Public
  • Public/Protected
  • All

Understanding the Project Structure

  1. Full Structure
  2. Contributing Files
  3. Source Files

This project is quite dense and has a quite complicated file structure, but for contributing you can ignore most of these files.

Let's run down the structure and which folders are important to focus on while contributing

This is the full project structure, without any build steps or tests, we will briefly run down each folder to talk about what it does but these are the important folders for contributing

Full Structure

├── codecs
│   └── src
├── formats
│   └── src
├── src
│   ├── clui
│   │   ├── commands
│   │   └── components
│   ├── clui-ui-components
│   ├── components
│   │   ├── dropzone
│   │   ├── progress
│   │   ├── static
│   │   ├── terminal
│   │   └── video
│   ├── features
│   │   └── src
│   ├── store
│   ├── ts
│   └── types
└── workflow
    └── src


See more at Contributing Guidelines

Outside Src

You might notice a few folders are outside the src folder, these are folders with static files which make up the modular structure of the project. Here you can easily contribute files without having to dive deep into the project.


The codecs folder contains all the codecs supported by the project. To add a new codec, a new file will have to be added to the codecs/src folder. You can find out more at Codecs


Similar to codecs folder, formats contains all the formats supported by the project. You can find out more about contributing a format at Formats


Workflows are a series of features executed in a specific order, you can create a new workflow by add a file to workflow/src. Find out more at Workflows


Features are different from the previous three sections as they are not yml configuration files but rather proper classes, you can contribute. ALl the features are located at src/features/src You can find out more about adding new features at Features

Clui Ui Elements

Clui UI Elements are the components seen inside the clui, when the users chooses a feature. They are located at src/clui-ui-components, learn more about adding your own react-components at Clui UI Components

Source Files


This folder contains all the code to create the clui, learn more about the clui here


Contains the react components for the UI/UX outside of the CLUI


Contains the global store using mobx for all the state management of the project


Contains all the typescript files responsible for processing the user's request


Contains all the typescript type definitions

Generated using TypeDoc