> For the complete documentation index, see [llms.txt](https://docs.iotcentral.in/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.iotcentral.in/docs/thingsboard/compiling-thingsboard-from-sources.md).

# Compiling Thingsboard from sources

To compile ThingsBoard from sources on a Linux Ubuntu machine, you will need to follow these steps:

1. Install the required dependencies. ThingsBoard requires Java 8 and Maven to be installed on your machine. You can install these dependencies using the following commands:

   1. :

   ```sql
   apt update
   sudo apt install default-jdk maven
   ```

   1. Clone the ThingsBoard repository from GitHub. Use the following command to clone the repository:

   ```bash
   # checkout latest release branch
   git clone -b release-3.8 git@github.com:thingsboard/thingsboard.git --depth 1
   cd thingsboard
   ```

   1. Navigate to the directory where you cloned the repository using the `cd` command.
   2. Build the ThingsBoard project using Maven. Run the following command to build the project:

   ```
   sudo mvn clean install -DskipTests
   ```

   This will compile the ThingsBoard project and create the required artifacts.

## Custom Logo for TB

### TB footer removal

ui-ngx/src/app/modules/home/components/dashboard-page/dashboard-page.component.html

\<section\*ngIf="!embedded" data-html2canvas-ignoreclass="tb-powered-by-footer" \[ngStyle]="{'color': dashboard.configuration.settings.titleColor}">

&#x20;         \<span>Powered by **\<ahref="<https://thingsboard.io>" target="\_blank">Thingsboard v.{{ thingsboardVersion }}\</a>**\</span>

&#x20;       \</section>

**TB Version update URL removal**

thingsboard/dao/src/main/java/org/thingsboard/server/dao/notification/DefaultNotifications.java

remove below line:

.button("Open release notes").link("${latestVersionReleaseNotesUrl}")

### TB Contact us link change

ui-ngx/src/app/modules/home/components/widget/lib/home-page/version-info.component.html

replace tb url with your own

### TB Logo Hyperlink Change

[ui-ngx/src/app/shared/components/logo.component.ts](https://github.com/thingsboard/thingsboard/blob/d56d85d81cb8160f147f8d1810673b1395244912/ui-ngx/src/app/shared/components/logo.component.ts#L29)

change thingsboard.io link to reuired link

### Title Change

**ui-ngx/src/index.html**

\<!doctype html>

\<htmllang="en" style="width: 100%; height: 100%;">

\<head>

&#x20; \<metacharset="utf-8">

&#x20; \<title>**ThingsBoard**\</title>

&#x20; \<basehref="/">

**ui-ngx/src/assets/locale/locale.constant-en\_US.json**

&#x20;"socialshare-text": "'{{dashboardTitle}}' **powered by ThingsBoard**",

&#x20;       "socialshare-title": "'{{dashboardTitle}}' **powered by ThingsBoard**",

"**thingsboard**": "BridgeThings",

### Also Chnage for AppTitle&#x20;

[ui-ngx/src/environments/environment.ts](https://github.com/thingsboard/thingsboard/blob/8169236360aa82b5b3e3257576499a64d95dc8b4/ui-ngx/src/environments/environment.ts#L22)

appTitle: '**ThingsBoard**',

[ui-ngx/src/environments/environment.prod.ts](https://github.com/thingsboard/thingsboard/blob/8169236360aa82b5b3e3257576499a64d95dc8b4/ui-ngx/src/environments/environment.prod.ts#L18)

appTitle: '**ThingsBoard**',

### Change Logos

{% embed url="<https://www.youtube.com/watch?v=YzM4VIVFfuk&t=172s>" %}

find thingsboard/ -name \*.svg

ui-ngx/src/assets/logo\_white.svg

/ui-ngx/src/assets/logo\_title\_white.svg

### Replace ico

ui-ngx/src/thingsboard.ico

with 32x32 pixel image convrted to .ico
