diff --git a/.gitignore b/.gitignore
index 25c7da7..0de1096 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,10 +7,11 @@
.DS_Store
Thumbs.db
-# VS Code
-.vscode/
+# VS Code - Ignore everything but project-specific config
+.vscode/*
!.vscode/launch.json
!.vscode/tasks.json
+!.vscode/extensions.json
# Node / Frontend (om det läggs till senare)
node_modules/
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
new file mode 100644
index 0000000..3ffe09b
--- /dev/null
+++ b/.vscode/extensions.json
@@ -0,0 +1,7 @@
+{
+ "recommendations": [
+ "vadimcn.vscode-lldb",
+ "tauri-apps.tauri-vscode",
+ "rust-lang.rust-analyzer"
+ ]
+}
\ No newline at end of file
diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 0000000..2e69dab
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,19 @@
+{
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "name": "Debug Tauri App",
+ "type": "lldb",
+ "request": "launch",
+ "program": "${workspaceFolder}/src-tauri/target/debug/ai-translater-client",
+ "args": [],
+ "cwd": "${workspaceFolder}/src-tauri",
+ "preLaunchTask": "build",
+ "env": {
+ "WEBKIT_DISABLE_COMPOSITING_MODE": "1",
+ // "GDK_BACKEND": "x11" // Uncomment if the above doesn't fix the initialization error
+ },
+ "sourceLanguages": ["rust"]
+ }
+ ]
+}
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
new file mode 100644
index 0000000..2a66c24
--- /dev/null
+++ b/.vscode/tasks.json
@@ -0,0 +1,69 @@
+{
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "label": "build",
+ "type": "shell",
+ "command": "cargo",
+ "args": [
+ "build",
+ "--manifest-path=./src-tauri/Cargo.toml",
+ "--no-default-features"
+ ],
+ "group": {
+ "kind": "build",
+ "isDefault": true
+ },
+ "problemMatcher": [
+ "$rustc"
+ ]
+ },
+ {
+ "label": "Build Release (Linux)",
+ "type": "shell",
+ "command": "cargo",
+ "args": [
+ "tauri",
+ "build"
+ ],
+ "options": {
+ "cwd": "${workspaceFolder}/src-tauri"
+ },
+ "group": "build",
+ "problemMatcher": []
+ },
+ {
+ "label": "Build Release (Windows)",
+ "type": "shell",
+ "command": "cargo",
+ "args": [
+ "tauri",
+ "build",
+ "--target",
+ "x86_64-pc-windows-msvc"
+ ],
+ "options": {
+ "cwd": "${workspaceFolder}/src-tauri"
+ },
+ "group": "build",
+ "problemMatcher": []
+ },
+ {
+ "label": "tauri dev",
+ "type": "shell",
+ "command": "cargo",
+ "args": [
+ "tauri",
+ "dev"
+ ],
+ "options": {
+ "cwd": "${workspaceFolder}/src-tauri",
+ "env": {
+ "WEBKIT_DISABLE_COMPOSITING_MODE": "1"
+ }
+ },
+ "group": "build",
+ "problemMatcher": []
+ }
+ ]
+}
diff --git a/README.md b/README.md
index cc1f500..74f7ec9 100644
--- a/README.md
+++ b/README.md
@@ -1,224 +1,110 @@
# AI Typist Client
-En cross-platform skrivbordsapplikation utvecklad i Rust och Tauri v2 för Windows 11 och Linux (med Wayland-stöd). Applikationen fungerar som en smart AI-assistent som integrerar sömlöst med ditt arbetsflöde via system-tray, globala genvägar och urklippshantering.
+En smart skrivbordsassistent utvecklad i Rust och Tauri v2. Applikationen hjälper dig att översätta, rättstava och förbättra text i realtid genom att integrera lokala AI-modeller (Ollama) eller molntjänster (OpenAI) direkt i ditt arbetsflöde.
-## Projektbeskrivning
+## 🚀 Komma Igång
-Målet med detta projekt är att skapa ett verktyg som kan förbättra, rättstava eller översätta text i alla applikationer genom att utnyttja lokala LLM:er (via Ollama) eller molnbaserade API:er (OpenAI).
+### Förutsättningar
-### Kärnfunktionalitet
+För att utveckla och bygga applikationen behöver du följande installerat:
-1. **System Tray Integration**:
- * Applikationen körs i bakgrunden med en ikon i statusfältet/systemfältet.
- * Högerklick ger en meny för att komma åt inställningar eller avsluta appen.
+1. **Rust & Cargo**:
+ ```bash
+ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
+ ```
+2. **System-beroenden (Linux/Debian/Ubuntu)**:
+ ```bash
+ sudo apt update
+ sudo apt install libwebkit2gtk-4.1-dev \
+ build-essential \
+ curl \
+ wget \
+ file \
+ libssl-dev \
+ libgtk-3-dev \
+ libayatana-appindicator3-dev \
+ librsvg2-dev
+ ```
+3. **Cross-compilation (Windows från Linux)**:
+ Om du vill bygga för Windows från Linux behöver du `nsis` samt Rust-målet för Windows:
+ ```bash
+ rustup target add x86_64-pc-windows-msvc
+ # Observera att cross-compilation med MSVC kan kräva ytterligare konfiguration (libs).
+ # Alternativt använd x86_64-pc-windows-gnu om du har Mingw installerat.
+ ```
-2. **AI-Workflow**:
- * **Input**: Appen hämtar text direkt från systemets urklipp (clipboard).
- * **Bearbetning**: Texten bakas in i en prompt och skickas till en LLM (Ollama/OpenAI) för översättning eller rättstavning.
- * **Output**: Det bearbetade svaret kan antingen:
- * Kopieras tillbaka till urklipp.
- * Skrivas ut direkt i det aktiva fönstret genom att imitera tangentbordstryckningar (Keyboard Mimicry).
+---
-3. **Teknisk Stack**:
- * **Språk**: Rust
- * **GUI/Ramverk**: Tauri v2
- * **Tangentbord/Input**: `enigo` (mimic) & `global-hotkey` (lyssna)
- * **Urklipp**: `arboard`
- * **AI-Kommunikation**: `reqwest` & `ollama-rs`
+## 💻 Utveckling i VS Code
-## Förutsättningar
+Det här projektet är konfigurerat för en smidig upplevelse i VS Code.
-Du behöver Rust installerat (rekommenderat via `rustup`).
+### Rekommenderade Tillägg
+VS Code kommer automatiskt rekommendera dessa, men se till att du har:
+* **rust-analyzer** (Rust språkstöd)
+* **Tauri** (Tauri verktyg)
+* **CodeLLDB** (För debugging)
-**Installera Rust (Linux/macOS):**
-```bash
-curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-# Följ instruktionerna på skärmen (standardinstallation är oftast bäst)
-source $HOME/.cargo/env
-```
+### Debugging (Felsökning)
+Du kan köra och debugga appen direkt inifrån redigeraren:
-**Felsökning: "cannot install while Rust is installed"**
-Om du får detta felmeddelande har du redan Rust installerat via systemets pakethanterare (vilket sällan stöder cross-compilation smidigt).
+1. Gå till **Run and Debug** fliken (Ctrl+Shift+D).
+2. Välj **"Debug Tauri App"** i menyn.
+3. Tryck **F5** (Play).
+ * *Detta bygger appen och startar debuggern automatiskt. Du kan sätta breakpoints i din Rust-kod.*
-*Lösning:* Avinstallera system-versionen och kör scriptet igen.
+### Bygga för Release 📦
+För att skapa färdiga körbara filer (binärer) utan debug-info:
-* **Arch Linux:** `sudo pacman -Rs rust` (Kolla även om du har `cargo` installerat separat)
-* **Ubuntu/Debian:** `sudo apt remove rustc cargo`
+1. Öppna **Command Palette** (Ctrl+Shift+P).
+2. Skriv och välj **"Tasks: Run Task"**.
+3. Välj en av följande:
+ * **Build Release (Linux)**: Skapar en optimerad build för Linux.
+ * *Resultat:* `src-tauri/target/release/bundle/deb/` (eller AppImage)
+ * **Build Release (Windows)**: Skapar en `.exe` för Windows.
+ * *Resultat:* `src-tauri/target/x86_64-pc-windows-msvc/release/bundle/msi/` (eller nsis)
-**Verifiera installationen:**
-```bash
-rustc --version
-cargo --version
-```
+---
-## Starta Applikationen
+## 📂 Projektstruktur
-För att starta applikationen i utvecklingsläge:
+Så här hittar du i koden:
-```bash
-cargo tauri dev
-```
+* **`src-tauri/`**: Backend-koden (Rust) och Tauri-konfigurationen.
+ * `Cargo.toml`: Beroenden för Rust.
+ * `tauri.conf.json`: Inställningar för fönster, ikoner, behörigheter och bundles.
+ * `build.rs`: Byggscript.
+ * **`src/`**: Källkoden för backend.
+ * `main.rs`: Entry point.
+ * `controllers/`: Logik för applikationens tillstånd och kommandon.
+ * `viewers/`: Hantering av fönster och System Tray.
+ * `utilities/`: Hjälpfunktioner (loggning, config).
+* **`dist/`**: (Frontend) Om du har en frontend (HTML/JS/CSS) ligger de kompilerade filerna här som Tauri laddar.
+* **`.vscode/`**: Inställningar för debugging och tasks i VS Code.
-### Felsökning: Linux (Wayland) & "Error 71"
-Om du använder Linux med Wayland (t.ex. GNOME eller KDE Plasma) kan du stöta på "Error 71 (Protocol error)" vid start. Detta är en känd bugg relaterad till WebKitGTK och hårdvaruacceleration.
+---
-**Lösning:**
-Kör applikationen med inaktiverad kompositering:
+## 🛠 Felsökning
+### Error 71 (Protocol Error) på Linux (Wayland)
+Om appen kraschar eller inte startar på Wayland:
+Debuggern är konfigurerad att automatiskt sätta `WEBKIT_DISABLE_COMPOSITING_MODE=1`.
+Om du kör manuellt från terminalen:
```bash
WEBKIT_DISABLE_COMPOSITING_MODE=1 cargo tauri dev
```
-Alternativt för vissa NVIDIA-konfigurationer:
-```bash
-__NV_DISABLE_EXPLICIT_SYNC=1 cargo tauri dev
-```
+### Debuggern startar inte
+* Kontrollera att du installerat **CodeLLDB** tillägget.
+* Om du får fel vid länkning, kontrollera att du har alla system-beroenden installerade (se "Förutsättningar").
-### Linux-beroenden (Ubuntu/Debian)
-För att kompilera Tauri på Linux krävs följande bibliotek:
+---
-```bash
-sudo apt update
-sudo apt install libwebkit2gtk-4.1-dev \
- build-essential \
- curl \
- wget \
- file \
- libssl-dev \
- libgtk-3-dev \
- libayatana-appindicator3-dev \
- librsvg2-dev
-```
+## 🧠 Teknisk Stack
-### Linux-beroenden (Arch Linux / Manjaro)
-```bash
-sudo pacman -Syu
-sudo pacman -S webkit2gtk-4.1 \
- base-devel \
- curl \
- wget \
- file \
- openssl \
- gtk3 \
- libayatana-appindicator \
- librsvg
-```
-
-*Obs: För Wayland-stöd hanterar GTK3/4 detta oftast automatiskt, men säkerställ att du kör en modern distribution.*
-
-## Utveckling
-
-### Installera Tauri CLI
-```bash
-cargo install tauri-cli --version "^2.0.0"
-```
-
-### Kör i utvecklingsläge
-Gå in i `src-tauri` mappen eller kör från roten om konfigurerat korrekt, men standard är:
-```bash
-cd src-tauri
-cargo tauri dev
-```
-Detta kommer starta applikationen. Eftersom vi inte har en frontend (HTML/JS) ännu, kommer fönstret vara tomt eller vitt, men System Tray-ikonen ska synas.
-
-## Debugging med VS Code (CodeLLDB)
-
-För att debugga Rust-koden effektivt i VS Code, skapa filen `.vscode/launch.json` i roten av projektet med följande innehåll. Detta binder CodeLLDB till Tauri-processen.
-
-```json
-{
- "version": "0.2.0",
- "configurations": [
- {
- "name": "Debug Tauri App",
- "type": "lldb",
- "request": "launch",
- "program": "${workspaceFolder}/src-tauri/target/debug/ai-translater-client",
- "args": [],
- "cwd": "${workspaceFolder}/src-tauri",
- "preLaunchTask": "build",
- "sourceLanguages": ["rust"]
- }
- ]
-}
-```
-
-## Cross-Compilation: Windows 11 från Linux
-
-Att bygga Windows `.exe` från Linux är fullt möjligt med `cargo-xwin`.
-
-1. **Installera cross-kompileringsverktyg:**
-
- **Ubuntu/Debian:**
- ```bash
- sudo apt install mingw-w64
- ```
-
- **Arch Linux:**
- ```bash
- sudo pacman -S mingw-w64 clang lld
- # Välj "alla" (tryck Enter) om du tillfrågas om medlemmar i gruppen
- ```
-
- **Alla:**
- ```bash
- cargo install cargo-xwin
- ```
-
-2. **Lägg till Windows target:**
- ```bash
- rustup target add x86_64-pc-windows-msvc
- ```
-
-3. **Bygg för Windows:**
- Stå i `src-tauri` mappen och kör:
- ```bash
- cargo tauri build --target x86_64-pc-windows-msvc --runner cargo-xwin
- ```
-
- Resultatet (exe & msi) hamnar i `src-tauri/target/x86_64-pc-windows-msvc/release/bundle/`.
-
-## Windows-testning på Linux (Wine/Proton)
-
-För att snabbt verifiera att Windows-bygget startar utan att byta OS:
-
-1. **Installera Wine:**
- ```bash
- sudo apt install wine64
- ```
-
-2. **Kör applikationen:**
- Navigera till output-mappen från steget ovan och kör:
- ```bash
- wine "ai-translater-client.exe"
- ```
- *Notera: System Tray kan bete sig annorlunda i Wine än i äkta Windows.*
-
-## Packaging & Distribution
-
-Tauri hanterar paketering automatiskt baserat på ditt OS.
-
-### Linux (.deb & .AppImage)
-```bash
-cargo tauri build
-```
-Filerna genereras i `src-tauri/target/release/bundle/deb/` och `appimage/`.
-
-### Windows (.msi & .exe)
-När du bygger via `cargo-xwin` (se ovan) eller på en Windows-maskin, genereras en `.msi` via WiX Toolset (om installerat) eller en `.exe` setup-fil via NSIS (standard i v2).
-
-## Projektstruktur
-* `src-tauri/Cargo.toml`: Alla beroenden (tauri, enigo, ollama-rs, etc).
-* `src-tauri/src/main.rs`: Entry point. Innehåller logik för System Tray.
-* `src-tauri/tauri.conf.json`: Konfiguration för fönster och byggprocess.
-
-## Loggning
-
-Applikationen har inbyggt stöd för loggning för att underlätta felsökning.
-
-* **Plats:** Loggfiler sparas i en mapp som heter `loggs` som ligger i samma katalog som den körbara filen.
-* **Filnamn:** En loggfil skapas per dag och döps efter dagens datum (t.ex. `2024-01-18.log`).
-* **Format:** Loggarna innehåller tidsstämpel, loggnivå (INFO, DEBUG, ERROR), modul/funktion samt meddelandet. Exempel:
- `[2024-01-18 10:00:00][INFO][ai_translater_client::main] Application started`
-* **Loggade händelser:** Applikationsstart, system tray-händelser, felmeddelanden och annan viktig information loggas.
+* **Core**: Rust
+* **Framework**: Tauri v2
+* **Input Monitoring**: `enigo` (tangentbords-simulering), `global-hotkey` (genvägar)
+* **Clipboard**: `arboard`
+* **AI**: `ollama-rs` (lokal) & `reqwest` (API)
diff --git a/src-tauri/.vscode/launch.json b/src-tauri/.vscode/launch.json
new file mode 100644
index 0000000..4bb3011
--- /dev/null
+++ b/src-tauri/.vscode/launch.json
@@ -0,0 +1,15 @@
+{
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "name": "Debug Tauri App",
+ "type": "lldb",
+ "request": "launch",
+ "program": "${workspaceFolder}/src-tauri/target/debug/ai-translater-client",
+ "args": [],
+ "cwd": "${workspaceFolder}/src-tauri",
+ "preLaunchTask": "build",
+ "sourceLanguages": ["rust"]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/src-tauri/icons/128x128.png b/src-tauri/icons/128x128.png
new file mode 100644
index 0000000..fa18fbb
Binary files /dev/null and b/src-tauri/icons/128x128.png differ
diff --git a/src-tauri/icons/128x128@2x.png b/src-tauri/icons/128x128@2x.png
new file mode 100644
index 0000000..e5019ee
Binary files /dev/null and b/src-tauri/icons/128x128@2x.png differ
diff --git a/src-tauri/icons/32x32.png b/src-tauri/icons/32x32.png
index 0550599..50c3150 100644
Binary files a/src-tauri/icons/32x32.png and b/src-tauri/icons/32x32.png differ
diff --git a/src-tauri/icons/64x64.png b/src-tauri/icons/64x64.png
new file mode 100644
index 0000000..b5228ff
Binary files /dev/null and b/src-tauri/icons/64x64.png differ
diff --git a/src-tauri/icons/Square107x107Logo.png b/src-tauri/icons/Square107x107Logo.png
new file mode 100644
index 0000000..ab56efa
Binary files /dev/null and b/src-tauri/icons/Square107x107Logo.png differ
diff --git a/src-tauri/icons/Square142x142Logo.png b/src-tauri/icons/Square142x142Logo.png
new file mode 100644
index 0000000..3fc7b28
Binary files /dev/null and b/src-tauri/icons/Square142x142Logo.png differ
diff --git a/src-tauri/icons/Square150x150Logo.png b/src-tauri/icons/Square150x150Logo.png
new file mode 100644
index 0000000..1d51554
Binary files /dev/null and b/src-tauri/icons/Square150x150Logo.png differ
diff --git a/src-tauri/icons/Square284x284Logo.png b/src-tauri/icons/Square284x284Logo.png
new file mode 100644
index 0000000..322e421
Binary files /dev/null and b/src-tauri/icons/Square284x284Logo.png differ
diff --git a/src-tauri/icons/Square30x30Logo.png b/src-tauri/icons/Square30x30Logo.png
new file mode 100644
index 0000000..498a92d
Binary files /dev/null and b/src-tauri/icons/Square30x30Logo.png differ
diff --git a/src-tauri/icons/Square310x310Logo.png b/src-tauri/icons/Square310x310Logo.png
new file mode 100644
index 0000000..a82befe
Binary files /dev/null and b/src-tauri/icons/Square310x310Logo.png differ
diff --git a/src-tauri/icons/Square44x44Logo.png b/src-tauri/icons/Square44x44Logo.png
new file mode 100644
index 0000000..72f133e
Binary files /dev/null and b/src-tauri/icons/Square44x44Logo.png differ
diff --git a/src-tauri/icons/Square71x71Logo.png b/src-tauri/icons/Square71x71Logo.png
new file mode 100644
index 0000000..d6edaae
Binary files /dev/null and b/src-tauri/icons/Square71x71Logo.png differ
diff --git a/src-tauri/icons/Square89x89Logo.png b/src-tauri/icons/Square89x89Logo.png
new file mode 100644
index 0000000..46ffbda
Binary files /dev/null and b/src-tauri/icons/Square89x89Logo.png differ
diff --git a/src-tauri/icons/StoreLogo.png b/src-tauri/icons/StoreLogo.png
new file mode 100644
index 0000000..9f940e4
Binary files /dev/null and b/src-tauri/icons/StoreLogo.png differ
diff --git a/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml b/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml
new file mode 100644
index 0000000..2ffbf24
--- /dev/null
+++ b/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png b/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 0000000..f5fcff4
Binary files /dev/null and b/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png differ
diff --git a/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png
new file mode 100644
index 0000000..2d79eb5
Binary files /dev/null and b/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png differ
diff --git a/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png
new file mode 100644
index 0000000..cce6597
Binary files /dev/null and b/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png differ
diff --git a/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png b/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 0000000..aa15f45
Binary files /dev/null and b/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png differ
diff --git a/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png
new file mode 100644
index 0000000..ec42363
Binary files /dev/null and b/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png differ
diff --git a/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png
new file mode 100644
index 0000000..d849d57
Binary files /dev/null and b/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png differ
diff --git a/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png b/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 0000000..6628d08
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png differ
diff --git a/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png
new file mode 100644
index 0000000..badbda4
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png differ
diff --git a/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..1fb978c
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png differ
diff --git a/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000..7eba822
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png
new file mode 100644
index 0000000..3d289b1
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png differ
diff --git a/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..d9919f3
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png differ
diff --git a/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 0000000..24bb065
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png
new file mode 100644
index 0000000..81ecaa1
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png differ
diff --git a/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..0aa926e
Binary files /dev/null and b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png differ
diff --git a/src-tauri/icons/android/values/ic_launcher_background.xml b/src-tauri/icons/android/values/ic_launcher_background.xml
new file mode 100644
index 0000000..ea9c223
--- /dev/null
+++ b/src-tauri/icons/android/values/ic_launcher_background.xml
@@ -0,0 +1,4 @@
+
+
+ #fff
+
\ No newline at end of file
diff --git a/src-tauri/icons/icon.icns b/src-tauri/icons/icon.icns
new file mode 100644
index 0000000..e063517
Binary files /dev/null and b/src-tauri/icons/icon.icns differ
diff --git a/src-tauri/icons/icon.ico b/src-tauri/icons/icon.ico
new file mode 100644
index 0000000..c9c6158
Binary files /dev/null and b/src-tauri/icons/icon.ico differ
diff --git a/src-tauri/icons/icon.png b/src-tauri/icons/icon.png
new file mode 100644
index 0000000..3e8138f
Binary files /dev/null and b/src-tauri/icons/icon.png differ
diff --git a/src-tauri/icons/ios/AppIcon-20x20@1x.png b/src-tauri/icons/ios/AppIcon-20x20@1x.png
new file mode 100644
index 0000000..9eefd29
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-20x20@1x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-20x20@2x-1.png b/src-tauri/icons/ios/AppIcon-20x20@2x-1.png
new file mode 100644
index 0000000..d8a07a8
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-20x20@2x-1.png differ
diff --git a/src-tauri/icons/ios/AppIcon-20x20@2x.png b/src-tauri/icons/ios/AppIcon-20x20@2x.png
new file mode 100644
index 0000000..d8a07a8
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-20x20@2x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-20x20@3x.png b/src-tauri/icons/ios/AppIcon-20x20@3x.png
new file mode 100644
index 0000000..4adec7a
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-20x20@3x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-29x29@1x.png b/src-tauri/icons/ios/AppIcon-29x29@1x.png
new file mode 100644
index 0000000..2303192
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-29x29@1x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-29x29@2x-1.png b/src-tauri/icons/ios/AppIcon-29x29@2x-1.png
new file mode 100644
index 0000000..ef58ffb
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-29x29@2x-1.png differ
diff --git a/src-tauri/icons/ios/AppIcon-29x29@2x.png b/src-tauri/icons/ios/AppIcon-29x29@2x.png
new file mode 100644
index 0000000..ef58ffb
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-29x29@2x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-29x29@3x.png b/src-tauri/icons/ios/AppIcon-29x29@3x.png
new file mode 100644
index 0000000..143bc42
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-29x29@3x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-40x40@1x.png b/src-tauri/icons/ios/AppIcon-40x40@1x.png
new file mode 100644
index 0000000..d8a07a8
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-40x40@1x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-40x40@2x-1.png b/src-tauri/icons/ios/AppIcon-40x40@2x-1.png
new file mode 100644
index 0000000..15ba61f
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-40x40@2x-1.png differ
diff --git a/src-tauri/icons/ios/AppIcon-40x40@2x.png b/src-tauri/icons/ios/AppIcon-40x40@2x.png
new file mode 100644
index 0000000..15ba61f
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-40x40@2x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-40x40@3x.png b/src-tauri/icons/ios/AppIcon-40x40@3x.png
new file mode 100644
index 0000000..7279383
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-40x40@3x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-512@2x.png b/src-tauri/icons/ios/AppIcon-512@2x.png
new file mode 100644
index 0000000..dd73d59
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-512@2x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-60x60@2x.png b/src-tauri/icons/ios/AppIcon-60x60@2x.png
new file mode 100644
index 0000000..7279383
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-60x60@2x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-60x60@3x.png b/src-tauri/icons/ios/AppIcon-60x60@3x.png
new file mode 100644
index 0000000..22c5b92
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-60x60@3x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-76x76@1x.png b/src-tauri/icons/ios/AppIcon-76x76@1x.png
new file mode 100644
index 0000000..e82b82e
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-76x76@1x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-76x76@2x.png b/src-tauri/icons/ios/AppIcon-76x76@2x.png
new file mode 100644
index 0000000..8da0067
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-76x76@2x.png differ
diff --git a/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png b/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png
new file mode 100644
index 0000000..2e346b5
Binary files /dev/null and b/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png differ