# Desktop App

Meshtastic arvuti rakendus jagab oma põhikoodibaasi Androidiga Kotlin Multiplatformi kaudu. Most features work identically on Linux, macOS, and Windows.

## Paigaldus

### Linux

- Lae väljalaske lehelt pakett `.deb` või `.AppImage`
- Or build from source using `./gradlew :desktopApp:run`

### macOS

- Lae väljalaske lehelt `.dmg` pakett
- Or build from source

### Windows

- Lae väljalaske lehelt `.msi` paigaldus fail
- Or build from source

## Connecting Your Radio

### USB port (esmane)

The most reliable connection method on Desktop:

1. Ühenda oma Meshtastic raadio USB kaabliga.
2. Rakendus peaks jadapordi automaatselt tuvastama.
3. Kui seda ei tuvastata, vali menüüst Ühenda õige jadapordiga.

### TCP/IP

For network-connected radios:

1. Sisesta raadio IP-aadress ja port (vaikimisi: 4403).
2. Klõpsa **Ühenda**.

### Sinihammas (BLE)

Sinihamba madal voolutarve on lauaarvutites toetatud [Kable](https://github.com/JuulLabs/kable) teegi kaudu:

1. Veendu, et süsteemil on sinihamba adapter.
2. Rakendus otsib automaatselt lähedalasuvaid Meshtastic raadioid.
3. Select your device from the Connect screen.

## Feature Parity

 Feature                                      | Android | Desktop | Sõnumid                                                                                                     |
 -------------------------------------------- | ------- | ------- | ----------------------------------------------------------------------------------------------------------- |
 Messaging                                    | ✓       | ✓       | Full parity                                                                                                 |
 Node List                                    | ✓       | ✓       | Full parity                                                                                                 |
 Kaart                                        | ✓       | ◐       | Kaardi vahekaart on küll töölaual olemas, aga interaktiivne kaardivaade on saadaval ainult Androidis        |
 Sätted                                       | ✓       | ✓       | Full parity                                                                                                 |
 Sinihammas (BLE)          | ✓       | ✓       | Via Kable on desktop                                                                                        |
 Püsivara uuendus                             | ✓       | ✓       | Rakendusesisese USB, BLE ja Wi-Fi (ESP32) värskendused toimivad samamoodi nagu Androidis |
 Märguanded                                   | ✓       | ✓       | Emakeelsed op.süsteemi märguanded                                                           |
 Widgets                                      | ✓       | ✗       | Android-only                                                                                                |
 Android auto                                 | ✓       | ✗       | Android-only — not available on Desktop or iOS                                                              |
 AI Assistant (Chirpy)     | ✓\*     | ✗       | Google flavor Android only                                                                                  |
 App Functions (system AI) | ✓†      | ✗       | Google flavor Android only                                                                                  |

\*Chirpy AI requires Android 14+ on Google flavor builds with supported hardware.

†App Functions exposes app actions to the Android system AI on Google flavor builds. See [App Functions](app-functions).

## UI Differences

The Desktop app uses the same Compose Multiplatform UI with adaptations for larger screens and desktop interaction.

### Kiirklahvid

Otseteed kasutavad macOS-is **⌘** (Command) ja Windowsis ning Linuxis **Ctrl**. (Super/Windowsi võti pole seotud.)

 Otsetee      | Action                     |
 ------------ | -------------------------- |
 **⌘/Ctrl+Q** | Quit the application       |
 **⌘/Ctrl+,** | Ava sätted                 |
 **⌘/Ctrl+1** | Switch to Messages tab     |
 **⌘/Ctrl+2** | Switch to Nodes tab        |
 **⌘/Ctrl+3** | Lülitu kaardi vahekaardile |
 **⌘/Ctrl+4** | Switch to Connect tab      |
 **⌘/Ctrl+/** | Open About                 |

### Window & System Tray

- **Window resizing** — responsive layout adapts to window dimensions
- **System tray** — minimize to system tray for background mesh operation
- **Salvemenüü** – paremklõpsa salveikoonil akna kuvamiseks või sulgemiseks
- **Hiire interaktsioon** — hõljumisseisundid ja standardne töölaua navigeerimine

### Notification Preferences

Töölauarakendus pakub rakendusesiseste kuvatavate märguannete juhtimist – sõnumite, uute sõlmede ja aku tühjenemise märguanded. Nendele pääsed ligi rakenduses menüüst **Seaded → Märguanded**.

## Built-in Documentation Browser

Töölauarakendusel on sisseehitatud dokumentatsioonibrauser, mis võimaldab kiiret juurdepääsu abisisule ilma rakendusest lahkumata.

![Dokumentide brauser sisukorraga](../../assets/screenshots/docs-browser_toc.png)

The browser supports full-text search across all documentation:

![Dokumentide brauserist otsimine](../../assets/screenshots/docs-browser_search.png)

Individual doc pages render with full formatting:

![Dokumentatsioonileht](../../assets/screenshots/docs-browser_page.png)

## Building from Source

```bash
git clone https://github.com/meshtastic/Meshtastic-Android.git
cd Meshtastic-Android
./gradlew :desktopApp:run
```

Requirements:

- JDK 21
- No Android SDK required for desktop-only builds

## Known Limitations

- Interaktiivne kaardivaade on saadaval ainult Androidile – kaardi vahekaart on olemas, kuid see ei kuva kaarti töölaual
- Mõned Androidile omased funktsioonid (vidinad, kindlad teavituskanalid) pole saadaval
- Performance may vary on low-spec hardware running Compose Desktop
- Lauaarvutid ei toeta veel BLE liitmist (sidumine toimib ilma ühendamiseta)

## Related Topics

- [Connections](connections) — connection methods overview
- [Püsivara uuendus](firmware) — USB, BLE ja Wi-Fi värskendused toimivad samamoodi nagu Androidis

---