﻿# Example: Create an app and set up its properties

> [HTML Version](how_to_create_an_app.html)

**Apps** are BRIX basic system components. Apps differ by functionality, for example, **Agreements**, **Candidates CVs**, **Deals**, etc. They are easy to create and modify, making the system quickly adapt to any business aspects.

The system offers three types of apps. Each type is suited for a certain task:

- **Standard**.** **These apps are convenient for recording and storing orders, employee’s individual records, contacts, potential clients, etc.

- **Document**.** **These apps help you set up document flows. By creating a type of document, for example, **Invoices**, you determine their processing, registration and route.

- **Event**.** **A calendar that allows you to create and display different events and meetings, for example, interviews.

Apps are located in workspaces and help organize work and data storage.

## Create a new app

Create a **Contracts** workspace where you will put the **Contracts**, **Add. agreements** and **Certificates** apps:

- Go to **Main page** and click the **Create** button in the **Build from Scratch** block. 

- In the pop-up window enter **Contracts** as the workspace name. Select an icon and set the visibility, specify whether it will be visible to everyone or only to the administrators.**(creating-app-1.gif)**

Now, add a new app into the workspace:

- Click **Create a new app** button in the workspace.

- Fill in the settings window. Select **Document** as a type. State the name of the app, name its items, select an icon, etc. To save the changes, click **Create**.

**(creating-app-2.gif)**

## App properties

Now you need to add contract properties. Properties are the fields of a contract that contain information, for example, **Contract number**, **Date**, etc. They form the app context. By adding the fields, you determine how the contracts are displayed in the interface and what information your employees have to input when adding a new contract.

All properties are listed on the right pane and have user-friendly names: **Number**, **Money**, **Date/Time**, etc. Drag them to the form and name them for the user to view in the system.

Add the fields:

- **Contractor**. The property of the [App (one)](360009707032.md#app) type. In the property settings, select the app where you store the data of your business partners, e.g. **Companies**.

- **Contract number**. The property of the [Number (integer)](360009707032.md#number) type.

- **Date**. The property of the [Date/time](360009707032.md#date-time) type.

- **Total amount of a contract**. The property of the [Money](360009707032.md#money) type.

Note that the app of the **Document** type always has a required field where the user is supposed to upload the document itself.

**(hmfile_hash_79ae8227.png)**

This is the easiest way to configure the contract’s context and form. However, in BRIX you can configure a form of any level of complexity in the built-in [low-code designer](https://brix365.com/en/products/low-code/).

By using it, you can drag both properties and pre-made widgets, such as information blocks and pop-up windows, to the form. They can be combined and linked between each other. Also, you can enable more complex settings that use scripts. To learn more more about it see [Low-code designer](form_low_code.md).

When you finish configuring the settings, click **Save**. The app is ready.

## Add data to the app

Now you can add a new contract to the app.

Click the **+ Contract** button and fill out the form. The form contains the same fields you configured when creating the app.

Upload the contract file to the form. The name of your file is used as a name of this contract in the app by default.

Click **Save**. The contract app item will appear in the app.

**(hmfile_hash_3fd7c39f.png)**

All contracts you add in the future will be displayed on the same page. 

**(hmfile_hash_6b9932d6.png)**

Next, you can configure the app even more:

- [Customize an app in the Low-code designer](form_low_code.md).

- [Associate a process with an app](how_to_bind_app_to_proccess.md).

- [Enable registration](records_classification.md).

- [Set up the name template](360007679591.md).

- [Customize the view of app items](360009923311.md).

- [Configure access settings](360007527512.md).