diff --git a/.gitignore b/.gitignore index a547bf3..b21bd68 100644 --- a/.gitignore +++ b/.gitignore @@ -1,24 +1,7 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -pnpm-debug.log* -lerna-debug.log* +# Generated by Cargo +# will have compiled files and executables +/target/ -node_modules -dist -dist-ssr -*.local - -# Editor directories and files -.vscode/* -!.vscode/extensions.json -.idea -.DS_Store -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw? +# Generated by Tauri +# will have schema files for capabilities auto-completion +/gen/schemas diff --git a/AGENTS.md b/AGENTS.md deleted file mode 100644 index e8aae01..0000000 --- a/AGENTS.md +++ /dev/null @@ -1,283 +0,0 @@ -# AGENTS.md - Coding Agent Guide - -This file provides essential information for AI coding agents working in this repository. - -## 📋 Project Overview - -**Tech Stack**: Tauri 2.x Desktop Application -- **Frontend**: Vanilla TypeScript + Vite 6.0.3 -- **Backend**: Rust (edition 2021) -- **Package Manager**: Bun (preferred) or npm -- **Build Tool**: Vite + Tauri CLI -- **Runtime**: mise (for Rust toolchain management) - -**Project Structure**: -``` -tauri-demo/ -├── src/ # Frontend TypeScript/HTML/CSS -│ ├── main.ts # Application entry point -│ ├── styles.css # Global styles -│ └── assets/ # Static resources -├── src-tauri/ # Rust backend -│ ├── src/ # Rust source code -│ │ ├── main.rs # Rust entry -│ │ └── lib.rs # Tauri commands -│ ├── Cargo.toml # Rust dependencies -│ ├── tauri.conf.json # Tauri configuration -│ ├── capabilities/ # Permission configs -│ └── icons/ # Multi-platform icons -├── index.html # HTML entry -├── package.json # Node.js config -├── tsconfig.json # TypeScript config -└── vite.config.ts # Vite config -``` - -## 🔧 Build/Lint/Test Commands - -### Development -```bash -# Start frontend dev server (port 1420) -bun run dev - -# Start Tauri in dev mode (recommended for full app testing) -bun run tauri dev - -# Preview production build -bun run preview -``` - -### Building -```bash -# Build frontend only (TypeScript compile + Vite bundle) -bun run build - -# Build complete Tauri application (all platforms) -bun run tauri build - -# Build for specific platform -bun run tauri build --target x86_64-pc-windows-msvc # Windows -bun run tauri build --target x86_64-apple-darwin # macOS -bun run tauri build --target x86_64-unknown-linux-gnu # Linux -``` - -### Type Checking -```bash -# TypeScript type check (run before build) -tsc --noEmit - -# Watch mode for continuous type checking -tsc --noEmit --watch -``` - -### Rust Commands -```bash -# Check Rust code (fast compile check) -cd src-tauri && cargo check - -# Format Rust code -cd src-tauri && cargo fmt - -# Lint Rust code -cd src-tauri && cargo clippy - -# Run Rust tests -cd src-tauri && cargo test - -# Run a specific Rust test -cd src-tauri && cargo test test_name - -# Run tests with output -cd src-tauri && cargo test -- --nocapture -``` - -### Testing -**Note**: No test framework is currently configured. To add testing: - -**Frontend Testing** (recommended: Vitest): -```bash -bun add -D vitest @vitest/ui -# Run all tests: bun run vitest -# Run single test: bun run vitest path/to/test.test.ts -``` - -**Rust Testing**: Use built-in `cargo test` (see above) - -## 📐 Code Style Guidelines - -### TypeScript/JavaScript - -#### Imports -- Use ES6 imports: `import { foo } from "bar"` -- Tauri API imports: `import { invoke } from "@tauri-apps/api/core"` -- Group imports: external packages first, then local modules -- No unused imports (enforced by `noUnusedLocals`) - -Example: -```typescript -import { invoke } from "@tauri-apps/api/core"; -import { open } from "@tauri-apps/plugin-opener"; - -import { helperFunction } from "./utils"; -``` - -#### Types -- **Always use explicit types** for function parameters and return values -- Use type inference for simple variable assignments -- Prefer `interface` for object shapes, `type` for unions/intersections -- Enable all strict mode checks (already configured in tsconfig.json) - -Example: -```typescript -// Good ✅ -async function greet(name: string): Promise { - return await invoke("greet", { name }); -} - -// Bad ❌ -async function greet(name) { - return await invoke("greet", { name }); -} -``` - -#### Naming Conventions -- **Variables/Functions**: camelCase (`greetUser`, `userName`) -- **Constants**: UPPER_SNAKE_CASE (`MAX_RETRIES`, `API_URL`) -- **Types/Interfaces**: PascalCase (`UserData`, `AppConfig`) -- **Private members**: prefix with underscore (`_internalState`) - -#### Error Handling -- Always handle promises with `async/await` or `.catch()` -- Use try-catch for critical operations -- Provide meaningful error messages - -Example: -```typescript -async function callRustCommand(): Promise { - try { - const result = await invoke("greet", { name: "World" }); - console.log(result); - } catch (error) { - console.error("Failed to call Rust command:", error); - } -} -``` - -### Rust - -#### Formatting -- Use `cargo fmt` (rustfmt) for automatic formatting -- 4 spaces for indentation (standard Rust) -- Line length: 100 characters (rustfmt default) - -#### Naming Conventions -- **Functions/Variables**: snake_case (`greet_user`, `user_name`) -- **Types/Structs/Enums**: PascalCase (`UserData`, `AppState`) -- **Constants**: SCREAMING_SNAKE_CASE (`MAX_CONNECTIONS`) -- **Lifetimes**: lowercase single letter (`'a`, `'static`) - -#### Tauri Commands -- Mark with `#[tauri::command]` attribute -- Use `&str` for string parameters (efficient) -- Return owned types (`String`, not `&str`) -- Register in `invoke_handler!` macro - -Example: -```rust -#[tauri::command] -fn process_data(input: &str, count: i32) -> Result { - if count < 0 { - return Err("Count must be non-negative".to_string()); - } - Ok(format!("Processed {} with count {}", input, count)) -} - -// Register in lib.rs: -.invoke_handler(tauri::generate_handler![process_data]) -``` - -#### Error Handling -- Use `Result` for fallible operations -- Prefer `?` operator for error propagation -- Use `expect()` only when panic is acceptable -- Return descriptive error messages - -Example: -```rust -#[tauri::command] -fn read_config() -> Result { - let data = std::fs::read_to_string("config.json") - .map_err(|e| format!("Failed to read config: {}", e))?; - - serde_json::from_str(&data) - .map_err(|e| format!("Invalid JSON: {}", e)) -} -``` - -## 🔌 Tauri-Specific Patterns - -### Frontend → Rust Communication -```typescript -import { invoke } from "@tauri-apps/api/core"; - -// Simple command -const result = await invoke("command_name", { param: value }); - -// With error handling -try { - const data = await invoke("command", args); -} catch (error) { - console.error("Command failed:", error); -} -``` - -### Adding New Commands -1. Define in `src-tauri/src/lib.rs`: - ```rust - #[tauri::command] - fn new_command(param: &str) -> String { - // implementation - } - ``` - -2. Register in `invoke_handler`: - ```rust - .invoke_handler(tauri::generate_handler![greet, new_command]) - ``` - -3. Call from frontend: - ```typescript - await invoke("new_command", { param: "value" }); - ``` - -## 📦 Dependencies - -### Adding Dependencies - -**Frontend**: -```bash -bun add package-name # Production dependency -bun add -D package-name # Dev dependency -``` - -**Rust**: -```bash -cd src-tauri -cargo add package-name # Production dependency -cargo add --dev package-name # Dev dependency -``` - -## ⚠️ Common Pitfalls - -1. **Port conflicts**: Dev server uses port 1420, HMR uses 1421 -2. **Type mismatches**: Ensure Rust return types match TypeScript expectations -3. **Missing command registration**: New Tauri commands must be added to `generate_handler!` -4. **Permission issues**: Update `src-tauri/capabilities/default.json` for new capabilities -5. **Build errors**: Run `tsc` before `vite build` (automated in build script) - -## 🚀 Workflow Tips - -- Always run `tsc --noEmit` before committing to catch type errors -- Test Tauri commands with `bun run tauri dev`, not just `bun run dev` -- Use `cargo clippy` to catch common Rust mistakes -- Check both frontend and Rust console for errors during development -- Clear Vite cache if seeing stale builds: `rm -rf node_modules/.vite` diff --git a/src-tauri/Cargo.lock b/Cargo.lock similarity index 100% rename from src-tauri/Cargo.lock rename to Cargo.lock diff --git a/src-tauri/Cargo.toml b/Cargo.toml similarity index 100% rename from src-tauri/Cargo.toml rename to Cargo.toml diff --git a/README.md b/README.md deleted file mode 100644 index 545960b..0000000 --- a/README.md +++ /dev/null @@ -1,143 +0,0 @@ -# Tauri Sidecar Shell for Nitro - -这是一个纯 Tauri 壳项目,用于将 Nitro 全栈应用打包成桌面应用。 - -## 📁 项目结构 - -``` -tauri-demo/ -├── src-tauri/ # Tauri 后端(Rust) -│ ├── src/ -│ │ └── lib.rs # 主逻辑:启动 Nitro sidecar -│ ├── binaries/ -│ │ └── nitro-server-x86_64-pc-windows-msvc.exe # Nitro 二进制文件 -│ ├── Cargo.toml # Rust 依赖 -│ ├── tauri.conf.json # Tauri 配置 -│ └── capabilities/ # 权限配置 -├── package.json # 只包含 @tauri-apps/cli -└── TAURI_API_IN_NITRO.md # 如何在 Nitro 项目中使用 Tauri API -``` - -**注意**:没有前端代码!前端来自你的 Nitro 应用。 - -## 🚀 使用方法 - -### 1. 准备 Nitro 二进制文件 - -在你的 Nitro 项目中打包: - -```bash -bun build --compile --outfile nitro-server -``` - -### 2. 放置到 Tauri 项目 - -```bash -# Windows -cp nitro-server.exe tauri-demo/src-tauri/binaries/nitro-server-x86_64-pc-windows-msvc.exe - -# macOS (Intel) -cp nitro-server tauri-demo/src-tauri/binaries/nitro-server-x86_64-apple-darwin - -# macOS (Apple Silicon) -cp nitro-server tauri-demo/src-tauri/binaries/nitro-server-aarch64-apple-darwin - -# Linux -cp nitro-server tauri-demo/src-tauri/binaries/nitro-server-x86_64-unknown-linux-gnu -``` - -### 3. 开发测试 - -```bash -bun run dev -# 或 -bun run tauri dev -``` - -### 4. 打包发布 - -```bash -bun run build -# 或 -bun run tauri build -``` - -输出在:`src-tauri/target/release/` - -## 🔧 工作原理 - -1. **Tauri 启动** → 检测可用端口(默认 3000) -2. **启动 Nitro sidecar** → 通过环境变量 `NITRO_PORT` 传递端口 -3. **监听 stdout** → 等待 Nitro 输出 `"Listening on:"` 确认启动 -4. **创建窗口** → 加载 `http://localhost:{port}` -5. **应用退出时** → 自动终止 Nitro 进程 - -## 📦 在 Nitro 项目中使用 Tauri API - -在你的 Nitro 项目中: - -```bash -bun add @tauri-apps/api -``` - -然后直接使用: - -```typescript -import { invoke } from '@tauri-apps/api/core'; - -// 调用 Rust 命令 -const result = await invoke('greet', { name: '张三' }); -``` - -详细文档:[TAURI_API_IN_NITRO.md](./TAURI_API_IN_NITRO.md) - -## ⚙️ 配置说明 - -### 修改窗口标题/大小 - -编辑 `src-tauri/src/lib.rs`: - -```rust -.title("你的应用名称") -.inner_size(1200.0, 800.0) // 宽度 x 高度 -``` - -### 修改端口范围 - -编辑 `src-tauri/src/lib.rs`: - -```rust -let port = find_available_port(3000).await; // 从 3000 开始查找 -``` - -### 修改启动超时时间 - -编辑 `src-tauri/src/lib.rs`: - -```rust -let timeout = Duration::from_secs(5); // 5 秒超时 -``` - -## 📝 常见问题 - -### Q: 为什么没有前端代码? -A: 前端完全由你的 Nitro 应用提供,Tauri 只是一个壳。 - -### Q: 如何调试? -A: 运行 `bun run dev`,查看控制台输出: -- `使用端口: 3000` -- `Nitro: ➜ Listening on: ...` -- `✓ Nitro 服务器启动成功!` - -### Q: 打包后体积多大? -A: 约 3-5MB(Tauri 壳)+ 你的 Nitro 二进制文件大小 - -### Q: 如何添加图标? -A: 替换 `src-tauri/icons/` 目录下的图标文件 - -## 🎯 核心优势 - -- ✅ **轻量**:比 Electron 小 30-40 倍 -- ✅ **简单**:无需学 Rust,只需配置 -- ✅ **原生**:使用系统 WebView,性能好 -- ✅ **灵活**:Nitro 应用可以独立开发和测试 diff --git a/src-tauri/binaries/.gitignore b/binaries/.gitignore similarity index 100% rename from src-tauri/binaries/.gitignore rename to binaries/.gitignore diff --git a/src-tauri/build.rs b/build.rs similarity index 100% rename from src-tauri/build.rs rename to build.rs diff --git a/bun.lock b/bun.lock deleted file mode 100644 index af9a1f5..0000000 --- a/bun.lock +++ /dev/null @@ -1,175 +0,0 @@ -{ - "lockfileVersion": 1, - "configVersion": 1, - "workspaces": { - "": { - "name": "tauri-demo", - "dependencies": { - "@tauri-apps/api": "^2", - "@tauri-apps/plugin-opener": "^2", - }, - "devDependencies": { - "@tauri-apps/cli": "^2", - "typescript": "~5.6.2", - "vite": "^6.0.3", - }, - }, - }, - "packages": { - "@esbuild/aix-ppc64": ["@esbuild/aix-ppc64@0.25.12", "", { "os": "aix", "cpu": "ppc64" }, "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA=="], - - "@esbuild/android-arm": ["@esbuild/android-arm@0.25.12", "", { "os": "android", "cpu": "arm" }, "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg=="], - - "@esbuild/android-arm64": ["@esbuild/android-arm64@0.25.12", "", { "os": "android", "cpu": "arm64" }, "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg=="], - - "@esbuild/android-x64": ["@esbuild/android-x64@0.25.12", "", { "os": "android", "cpu": "x64" }, "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg=="], - - "@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.25.12", "", { "os": "darwin", "cpu": "arm64" }, "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg=="], - - "@esbuild/darwin-x64": ["@esbuild/darwin-x64@0.25.12", "", { "os": "darwin", "cpu": "x64" }, "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA=="], - - "@esbuild/freebsd-arm64": ["@esbuild/freebsd-arm64@0.25.12", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg=="], - - "@esbuild/freebsd-x64": ["@esbuild/freebsd-x64@0.25.12", "", { "os": "freebsd", "cpu": "x64" }, "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ=="], - - "@esbuild/linux-arm": ["@esbuild/linux-arm@0.25.12", "", { "os": "linux", "cpu": "arm" }, "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw=="], - - "@esbuild/linux-arm64": ["@esbuild/linux-arm64@0.25.12", "", { "os": "linux", "cpu": "arm64" }, "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ=="], - - "@esbuild/linux-ia32": ["@esbuild/linux-ia32@0.25.12", "", { "os": "linux", "cpu": "ia32" }, "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA=="], - - "@esbuild/linux-loong64": ["@esbuild/linux-loong64@0.25.12", "", { "os": "linux", "cpu": "none" }, "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng=="], - - "@esbuild/linux-mips64el": ["@esbuild/linux-mips64el@0.25.12", "", { "os": "linux", "cpu": "none" }, "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw=="], - - "@esbuild/linux-ppc64": ["@esbuild/linux-ppc64@0.25.12", "", { "os": "linux", "cpu": "ppc64" }, "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA=="], - - "@esbuild/linux-riscv64": ["@esbuild/linux-riscv64@0.25.12", "", { "os": "linux", "cpu": "none" }, "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w=="], - - "@esbuild/linux-s390x": ["@esbuild/linux-s390x@0.25.12", "", { "os": "linux", "cpu": "s390x" }, "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg=="], - - "@esbuild/linux-x64": ["@esbuild/linux-x64@0.25.12", "", { "os": "linux", "cpu": "x64" }, "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw=="], - - "@esbuild/netbsd-arm64": ["@esbuild/netbsd-arm64@0.25.12", "", { "os": "none", "cpu": "arm64" }, "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg=="], - - "@esbuild/netbsd-x64": ["@esbuild/netbsd-x64@0.25.12", "", { "os": "none", "cpu": "x64" }, "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ=="], - - "@esbuild/openbsd-arm64": ["@esbuild/openbsd-arm64@0.25.12", "", { "os": "openbsd", "cpu": "arm64" }, "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A=="], - - "@esbuild/openbsd-x64": ["@esbuild/openbsd-x64@0.25.12", "", { "os": "openbsd", "cpu": "x64" }, "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw=="], - - "@esbuild/openharmony-arm64": ["@esbuild/openharmony-arm64@0.25.12", "", { "os": "none", "cpu": "arm64" }, "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg=="], - - "@esbuild/sunos-x64": ["@esbuild/sunos-x64@0.25.12", "", { "os": "sunos", "cpu": "x64" }, "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w=="], - - "@esbuild/win32-arm64": ["@esbuild/win32-arm64@0.25.12", "", { "os": "win32", "cpu": "arm64" }, "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg=="], - - "@esbuild/win32-ia32": ["@esbuild/win32-ia32@0.25.12", "", { "os": "win32", "cpu": "ia32" }, "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ=="], - - "@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.12", "", { "os": "win32", "cpu": "x64" }, "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA=="], - - "@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.55.1", "", { "os": "android", "cpu": "arm" }, "sha512-9R0DM/ykwfGIlNu6+2U09ga0WXeZ9MRC2Ter8jnz8415VbuIykVuc6bhdrbORFZANDmTDvq26mJrEVTl8TdnDg=="], - - "@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.55.1", "", { "os": "android", "cpu": "arm64" }, "sha512-eFZCb1YUqhTysgW3sj/55du5cG57S7UTNtdMjCW7LwVcj3dTTcowCsC8p7uBdzKsZYa8J7IDE8lhMI+HX1vQvg=="], - - "@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.55.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-p3grE2PHcQm2e8PSGZdzIhCKbMCw/xi9XvMPErPhwO17vxtvCN5FEA2mSLgmKlCjHGMQTP6phuQTYWUnKewwGg=="], - - "@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.55.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-rDUjG25C9qoTm+e02Esi+aqTKSBYwVTaoS1wxcN47/Luqef57Vgp96xNANwt5npq9GDxsH7kXxNkJVEsWEOEaQ=="], - - "@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.55.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-+JiU7Jbp5cdxekIgdte0jfcu5oqw4GCKr6i3PJTlXTCU5H5Fvtkpbs4XJHRmWNXF+hKmn4v7ogI5OQPaupJgOg=="], - - "@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.55.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-V5xC1tOVWtLLmr3YUk2f6EJK4qksksOYiz/TCsFHu/R+woubcLWdC9nZQmwjOAbmExBIVKsm1/wKmEy4z4u4Bw=="], - - "@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.55.1", "", { "os": "linux", "cpu": "arm" }, "sha512-Rn3n+FUk2J5VWx+ywrG/HGPTD9jXNbicRtTM11e/uorplArnXZYsVifnPPqNNP5BsO3roI4n8332ukpY/zN7rQ=="], - - "@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.55.1", "", { "os": "linux", "cpu": "arm" }, "sha512-grPNWydeKtc1aEdrJDWk4opD7nFtQbMmV7769hiAaYyUKCT1faPRm2av8CX1YJsZ4TLAZcg9gTR1KvEzoLjXkg=="], - - "@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.55.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-a59mwd1k6x8tXKcUxSyISiquLwB5pX+fJW9TkWU46lCqD/GRDe9uDN31jrMmVP3feI3mhAdvcCClhV8V5MhJFQ=="], - - "@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.55.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-puS1MEgWX5GsHSoiAsF0TYrpomdvkaXm0CofIMG5uVkP6IBV+ZO9xhC5YEN49nsgYo1DuuMquF9+7EDBVYu4uA=="], - - "@rollup/rollup-linux-loong64-gnu": ["@rollup/rollup-linux-loong64-gnu@4.55.1", "", { "os": "linux", "cpu": "none" }, "sha512-r3Wv40in+lTsULSb6nnoudVbARdOwb2u5fpeoOAZjFLznp6tDU8kd+GTHmJoqZ9lt6/Sys33KdIHUaQihFcu7g=="], - - "@rollup/rollup-linux-loong64-musl": ["@rollup/rollup-linux-loong64-musl@4.55.1", "", { "os": "linux", "cpu": "none" }, "sha512-MR8c0+UxAlB22Fq4R+aQSPBayvYa3+9DrwG/i1TKQXFYEaoW3B5b/rkSRIypcZDdWjWnpcvxbNaAJDcSbJU3Lw=="], - - "@rollup/rollup-linux-ppc64-gnu": ["@rollup/rollup-linux-ppc64-gnu@4.55.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-3KhoECe1BRlSYpMTeVrD4sh2Pw2xgt4jzNSZIIPLFEsnQn9gAnZagW9+VqDqAHgm1Xc77LzJOo2LdigS5qZ+gw=="], - - "@rollup/rollup-linux-ppc64-musl": ["@rollup/rollup-linux-ppc64-musl@4.55.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-ziR1OuZx0vdYZZ30vueNZTg73alF59DicYrPViG0NEgDVN8/Jl87zkAPu4u6VjZST2llgEUjaiNl9JM6HH1Vdw=="], - - "@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.55.1", "", { "os": "linux", "cpu": "none" }, "sha512-uW0Y12ih2XJRERZ4jAfKamTyIHVMPQnTZcQjme2HMVDAHY4amf5u414OqNYC+x+LzRdRcnIG1YodLrrtA8xsxw=="], - - "@rollup/rollup-linux-riscv64-musl": ["@rollup/rollup-linux-riscv64-musl@4.55.1", "", { "os": "linux", "cpu": "none" }, "sha512-u9yZ0jUkOED1BFrqu3BwMQoixvGHGZ+JhJNkNKY/hyoEgOwlqKb62qu+7UjbPSHYjiVy8kKJHvXKv5coH4wDeg=="], - - "@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.55.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-/0PenBCmqM4ZUd0190j7J0UsQ/1nsi735iPRakO8iPciE7BQ495Y6msPzaOmvx0/pn+eJVVlZrNrSh4WSYLxNg=="], - - "@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.55.1", "", { "os": "linux", "cpu": "x64" }, "sha512-a8G4wiQxQG2BAvo+gU6XrReRRqj+pLS2NGXKm8io19goR+K8lw269eTrPkSdDTALwMmJp4th2Uh0D8J9bEV1vg=="], - - "@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.55.1", "", { "os": "linux", "cpu": "x64" }, "sha512-bD+zjpFrMpP/hqkfEcnjXWHMw5BIghGisOKPj+2NaNDuVT+8Ds4mPf3XcPHuat1tz89WRL+1wbcxKY3WSbiT7w=="], - - "@rollup/rollup-openbsd-x64": ["@rollup/rollup-openbsd-x64@4.55.1", "", { "os": "openbsd", "cpu": "x64" }, "sha512-eLXw0dOiqE4QmvikfQ6yjgkg/xDM+MdU9YJuP4ySTibXU0oAvnEWXt7UDJmD4UkYialMfOGFPJnIHSe/kdzPxg=="], - - "@rollup/rollup-openharmony-arm64": ["@rollup/rollup-openharmony-arm64@4.55.1", "", { "os": "none", "cpu": "arm64" }, "sha512-xzm44KgEP11te3S2HCSyYf5zIzWmx3n8HDCc7EE59+lTcswEWNpvMLfd9uJvVX8LCg9QWG67Xt75AuHn4vgsXw=="], - - "@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.55.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-yR6Bl3tMC/gBok5cz/Qi0xYnVbIxGx5Fcf/ca0eB6/6JwOY+SRUcJfI0OpeTpPls7f194as62thCt/2BjxYN8g=="], - - "@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.55.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-3fZBidchE0eY0oFZBnekYCfg+5wAB0mbpCBuofh5mZuzIU/4jIVkbESmd2dOsFNS78b53CYv3OAtwqkZZmU5nA=="], - - "@rollup/rollup-win32-x64-gnu": ["@rollup/rollup-win32-x64-gnu@4.55.1", "", { "os": "win32", "cpu": "x64" }, "sha512-xGGY5pXj69IxKb4yv/POoocPy/qmEGhimy/FoTpTSVju3FYXUQQMFCaZZXJVidsmGxRioZAwpThl/4zX41gRKg=="], - - "@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.55.1", "", { "os": "win32", "cpu": "x64" }, "sha512-SPEpaL6DX4rmcXtnhdrQYgzQ5W2uW3SCJch88lB2zImhJRhIIK44fkUrgIV/Q8yUNfw5oyZ5vkeQsZLhCb06lw=="], - - "@tauri-apps/api": ["@tauri-apps/api@2.9.1", "", {}, "sha512-IGlhP6EivjXHepbBic618GOmiWe4URJiIeZFlB7x3czM0yDHHYviH1Xvoiv4FefdkQtn6v7TuwWCRfOGdnVUGw=="], - - "@tauri-apps/cli": ["@tauri-apps/cli@2.9.6", "", { "optionalDependencies": { "@tauri-apps/cli-darwin-arm64": "2.9.6", "@tauri-apps/cli-darwin-x64": "2.9.6", "@tauri-apps/cli-linux-arm-gnueabihf": "2.9.6", "@tauri-apps/cli-linux-arm64-gnu": "2.9.6", "@tauri-apps/cli-linux-arm64-musl": "2.9.6", "@tauri-apps/cli-linux-riscv64-gnu": "2.9.6", "@tauri-apps/cli-linux-x64-gnu": "2.9.6", "@tauri-apps/cli-linux-x64-musl": "2.9.6", "@tauri-apps/cli-win32-arm64-msvc": "2.9.6", "@tauri-apps/cli-win32-ia32-msvc": "2.9.6", "@tauri-apps/cli-win32-x64-msvc": "2.9.6" }, "bin": { "tauri": "tauri.js" } }, "sha512-3xDdXL5omQ3sPfBfdC8fCtDKcnyV7OqyzQgfyT5P3+zY6lcPqIYKQBvUasNvppi21RSdfhy44ttvJmftb0PCDw=="], - - "@tauri-apps/cli-darwin-arm64": ["@tauri-apps/cli-darwin-arm64@2.9.6", "", { "os": "darwin", "cpu": "arm64" }, "sha512-gf5no6N9FCk1qMrti4lfwP77JHP5haASZgVbBgpZG7BUepB3fhiLCXGUK8LvuOjP36HivXewjg72LTnPDScnQQ=="], - - "@tauri-apps/cli-darwin-x64": ["@tauri-apps/cli-darwin-x64@2.9.6", "", { "os": "darwin", "cpu": "x64" }, "sha512-oWh74WmqbERwwrwcueJyY6HYhgCksUc6NT7WKeXyrlY/FPmNgdyQAgcLuTSkhRFuQ6zh4Np1HZpOqCTpeZBDcw=="], - - "@tauri-apps/cli-linux-arm-gnueabihf": ["@tauri-apps/cli-linux-arm-gnueabihf@2.9.6", "", { "os": "linux", "cpu": "arm" }, "sha512-/zde3bFroFsNXOHN204DC2qUxAcAanUjVXXSdEGmhwMUZeAQalNj5cz2Qli2elsRjKN/hVbZOJj0gQ5zaYUjSg=="], - - "@tauri-apps/cli-linux-arm64-gnu": ["@tauri-apps/cli-linux-arm64-gnu@2.9.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-pvbljdhp9VOo4RnID5ywSxgBs7qiylTPlK56cTk7InR3kYSTJKYMqv/4Q/4rGo/mG8cVppesKIeBMH42fw6wjg=="], - - "@tauri-apps/cli-linux-arm64-musl": ["@tauri-apps/cli-linux-arm64-musl@2.9.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-02TKUndpodXBCR0oP//6dZWGYcc22Upf2eP27NvC6z0DIqvkBBFziQUcvi2n6SrwTRL0yGgQjkm9K5NIn8s6jw=="], - - "@tauri-apps/cli-linux-riscv64-gnu": ["@tauri-apps/cli-linux-riscv64-gnu@2.9.6", "", { "os": "linux", "cpu": "none" }, "sha512-fmp1hnulbqzl1GkXl4aTX9fV+ubHw2LqlLH1PE3BxZ11EQk+l/TmiEongjnxF0ie4kV8DQfDNJ1KGiIdWe1GvQ=="], - - "@tauri-apps/cli-linux-x64-gnu": ["@tauri-apps/cli-linux-x64-gnu@2.9.6", "", { "os": "linux", "cpu": "x64" }, "sha512-vY0le8ad2KaV1PJr+jCd8fUF9VOjwwQP/uBuTJvhvKTloEwxYA/kAjKK9OpIslGA9m/zcnSo74czI6bBrm2sYA=="], - - "@tauri-apps/cli-linux-x64-musl": ["@tauri-apps/cli-linux-x64-musl@2.9.6", "", { "os": "linux", "cpu": "x64" }, "sha512-TOEuB8YCFZTWVDzsO2yW0+zGcoMiPPwcUgdnW1ODnmgfwccpnihDRoks+ABT1e3fHb1ol8QQWsHSCovb3o2ENQ=="], - - "@tauri-apps/cli-win32-arm64-msvc": ["@tauri-apps/cli-win32-arm64-msvc@2.9.6", "", { "os": "win32", "cpu": "arm64" }, "sha512-ujmDGMRc4qRLAnj8nNG26Rlz9klJ0I0jmZs2BPpmNNf0gM/rcVHhqbEkAaHPTBVIrtUdf7bGvQAD2pyIiUrBHQ=="], - - "@tauri-apps/cli-win32-ia32-msvc": ["@tauri-apps/cli-win32-ia32-msvc@2.9.6", "", { "os": "win32", "cpu": "ia32" }, "sha512-S4pT0yAJgFX8QRCyKA1iKjZ9Q/oPjCZf66A/VlG5Yw54Nnr88J1uBpmenINbXxzyhduWrIXBaUbEY1K80ZbpMg=="], - - "@tauri-apps/cli-win32-x64-msvc": ["@tauri-apps/cli-win32-x64-msvc@2.9.6", "", { "os": "win32", "cpu": "x64" }, "sha512-ldWuWSSkWbKOPjQMJoYVj9wLHcOniv7diyI5UAJ4XsBdtaFB0pKHQsqw/ItUma0VXGC7vB4E9fZjivmxur60aw=="], - - "@tauri-apps/plugin-opener": ["@tauri-apps/plugin-opener@2.5.3", "", { "dependencies": { "@tauri-apps/api": "^2.8.0" } }, "sha512-CCcUltXMOfUEArbf3db3kCE7Ggy1ExBEBl51Ko2ODJ6GDYHRp1nSNlQm5uNCFY5k7/ufaK5Ib3Du/Zir19IYQQ=="], - - "@types/estree": ["@types/estree@1.0.8", "", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="], - - "esbuild": ["esbuild@0.25.12", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.12", "@esbuild/android-arm": "0.25.12", "@esbuild/android-arm64": "0.25.12", "@esbuild/android-x64": "0.25.12", "@esbuild/darwin-arm64": "0.25.12", "@esbuild/darwin-x64": "0.25.12", "@esbuild/freebsd-arm64": "0.25.12", "@esbuild/freebsd-x64": "0.25.12", "@esbuild/linux-arm": "0.25.12", "@esbuild/linux-arm64": "0.25.12", "@esbuild/linux-ia32": "0.25.12", "@esbuild/linux-loong64": "0.25.12", "@esbuild/linux-mips64el": "0.25.12", "@esbuild/linux-ppc64": "0.25.12", "@esbuild/linux-riscv64": "0.25.12", "@esbuild/linux-s390x": "0.25.12", "@esbuild/linux-x64": "0.25.12", "@esbuild/netbsd-arm64": "0.25.12", "@esbuild/netbsd-x64": "0.25.12", "@esbuild/openbsd-arm64": "0.25.12", "@esbuild/openbsd-x64": "0.25.12", "@esbuild/openharmony-arm64": "0.25.12", "@esbuild/sunos-x64": "0.25.12", "@esbuild/win32-arm64": "0.25.12", "@esbuild/win32-ia32": "0.25.12", "@esbuild/win32-x64": "0.25.12" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg=="], - - "fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], - - "fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="], - - "nanoid": ["nanoid@3.3.11", "", { "bin": { "nanoid": "bin/nanoid.cjs" } }, "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w=="], - - "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], - - "picomatch": ["picomatch@4.0.3", "", {}, "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="], - - "postcss": ["postcss@8.5.6", "", { "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg=="], - - "rollup": ["rollup@4.55.1", "", { "dependencies": { "@types/estree": "1.0.8" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.55.1", "@rollup/rollup-android-arm64": "4.55.1", "@rollup/rollup-darwin-arm64": "4.55.1", "@rollup/rollup-darwin-x64": "4.55.1", "@rollup/rollup-freebsd-arm64": "4.55.1", "@rollup/rollup-freebsd-x64": "4.55.1", "@rollup/rollup-linux-arm-gnueabihf": "4.55.1", "@rollup/rollup-linux-arm-musleabihf": "4.55.1", "@rollup/rollup-linux-arm64-gnu": "4.55.1", "@rollup/rollup-linux-arm64-musl": "4.55.1", "@rollup/rollup-linux-loong64-gnu": "4.55.1", "@rollup/rollup-linux-loong64-musl": "4.55.1", "@rollup/rollup-linux-ppc64-gnu": "4.55.1", "@rollup/rollup-linux-ppc64-musl": "4.55.1", "@rollup/rollup-linux-riscv64-gnu": "4.55.1", "@rollup/rollup-linux-riscv64-musl": "4.55.1", "@rollup/rollup-linux-s390x-gnu": "4.55.1", "@rollup/rollup-linux-x64-gnu": "4.55.1", "@rollup/rollup-linux-x64-musl": "4.55.1", "@rollup/rollup-openbsd-x64": "4.55.1", "@rollup/rollup-openharmony-arm64": "4.55.1", "@rollup/rollup-win32-arm64-msvc": "4.55.1", "@rollup/rollup-win32-ia32-msvc": "4.55.1", "@rollup/rollup-win32-x64-gnu": "4.55.1", "@rollup/rollup-win32-x64-msvc": "4.55.1", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-wDv/Ht1BNHB4upNbK74s9usvl7hObDnvVzknxqY/E/O3X6rW1U1rV1aENEfJ54eFZDTNo7zv1f5N4edCluH7+A=="], - - "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="], - - "tinyglobby": ["tinyglobby@0.2.15", "", { "dependencies": { "fdir": "^6.5.0", "picomatch": "^4.0.3" } }, "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ=="], - - "typescript": ["typescript@5.6.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw=="], - - "vite": ["vite@6.4.1", "", { "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", "picomatch": "^4.0.2", "postcss": "^8.5.3", "rollup": "^4.34.9", "tinyglobby": "^0.2.13" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g=="], - } -} diff --git a/src-tauri/capabilities/default.json b/capabilities/default.json similarity index 100% rename from src-tauri/capabilities/default.json rename to capabilities/default.json diff --git a/src-tauri/icons/128x128.png b/icons/128x128.png similarity index 100% rename from src-tauri/icons/128x128.png rename to icons/128x128.png diff --git a/src-tauri/icons/128x128@2x.png b/icons/128x128@2x.png similarity index 100% rename from src-tauri/icons/128x128@2x.png rename to icons/128x128@2x.png diff --git a/src-tauri/icons/32x32.png b/icons/32x32.png similarity index 100% rename from src-tauri/icons/32x32.png rename to icons/32x32.png diff --git a/src-tauri/icons/Square107x107Logo.png b/icons/Square107x107Logo.png similarity index 100% rename from src-tauri/icons/Square107x107Logo.png rename to icons/Square107x107Logo.png diff --git a/src-tauri/icons/Square142x142Logo.png b/icons/Square142x142Logo.png similarity index 100% rename from src-tauri/icons/Square142x142Logo.png rename to icons/Square142x142Logo.png diff --git a/src-tauri/icons/Square150x150Logo.png b/icons/Square150x150Logo.png similarity index 100% rename from src-tauri/icons/Square150x150Logo.png rename to icons/Square150x150Logo.png diff --git a/src-tauri/icons/Square284x284Logo.png b/icons/Square284x284Logo.png similarity index 100% rename from src-tauri/icons/Square284x284Logo.png rename to icons/Square284x284Logo.png diff --git a/src-tauri/icons/Square30x30Logo.png b/icons/Square30x30Logo.png similarity index 100% rename from src-tauri/icons/Square30x30Logo.png rename to icons/Square30x30Logo.png diff --git a/src-tauri/icons/Square310x310Logo.png b/icons/Square310x310Logo.png similarity index 100% rename from src-tauri/icons/Square310x310Logo.png rename to icons/Square310x310Logo.png diff --git a/src-tauri/icons/Square44x44Logo.png b/icons/Square44x44Logo.png similarity index 100% rename from src-tauri/icons/Square44x44Logo.png rename to icons/Square44x44Logo.png diff --git a/src-tauri/icons/Square71x71Logo.png b/icons/Square71x71Logo.png similarity index 100% rename from src-tauri/icons/Square71x71Logo.png rename to icons/Square71x71Logo.png diff --git a/src-tauri/icons/Square89x89Logo.png b/icons/Square89x89Logo.png similarity index 100% rename from src-tauri/icons/Square89x89Logo.png rename to icons/Square89x89Logo.png diff --git a/src-tauri/icons/StoreLogo.png b/icons/StoreLogo.png similarity index 100% rename from src-tauri/icons/StoreLogo.png rename to icons/StoreLogo.png diff --git a/src-tauri/icons/icon.icns b/icons/icon.icns similarity index 100% rename from src-tauri/icons/icon.icns rename to icons/icon.icns diff --git a/src-tauri/icons/icon.ico b/icons/icon.ico similarity index 100% rename from src-tauri/icons/icon.ico rename to icons/icon.ico diff --git a/src-tauri/icons/icon.png b/icons/icon.png similarity index 100% rename from src-tauri/icons/icon.png rename to icons/icon.png diff --git a/package.json b/package.json deleted file mode 100644 index bf95b2b..0000000 --- a/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "tauri-demo", - "private": true, - "version": "0.1.0", - "type": "module", - "scripts": { - "tauri": "tauri", - "dev": "tauri dev", - "build": "tauri build" - }, - "devDependencies": { - "@tauri-apps/cli": "^2" - } -} diff --git a/src-tauri/.gitignore b/src-tauri/.gitignore deleted file mode 100644 index b21bd68..0000000 --- a/src-tauri/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -# Generated by Cargo -# will have compiled files and executables -/target/ - -# Generated by Tauri -# will have schema files for capabilities auto-completion -/gen/schemas diff --git a/src-tauri/src/lib.rs b/src/lib.rs similarity index 100% rename from src-tauri/src/lib.rs rename to src/lib.rs diff --git a/src-tauri/src/main.rs b/src/main.rs similarity index 100% rename from src-tauri/src/main.rs rename to src/main.rs diff --git a/src-tauri/tauri.conf.json b/tauri.conf.json similarity index 100% rename from src-tauri/tauri.conf.json rename to tauri.conf.json