diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 57ec72b..2919816 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -43,13 +43,13 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: '22' cache: 'npm' - name: Setup pnpm uses: pnpm/action-setup@v4 with: - version: 8 + version: 10 - name: Setup Rust uses: dtolnay/rust-toolchain@stable diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f64306d..4c3c292 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,13 +25,13 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: '22' cache: 'npm' - name: Setup pnpm uses: pnpm/action-setup@v4 with: - version: 8 + version: 10 - name: Setup Rust uses: dtolnay/rust-toolchain@stable @@ -85,12 +85,12 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: '22' - name: Setup pnpm uses: pnpm/action-setup@v4 with: - version: 8 + version: 10 - name: Install frontend dependencies run: pnpm install diff --git a/.github/workflows/dependencies.yml b/.github/workflows/dependencies.yml index 2a0ff01..444399f 100644 --- a/.github/workflows/dependencies.yml +++ b/.github/workflows/dependencies.yml @@ -24,12 +24,12 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: '22' - name: Setup pnpm uses: pnpm/action-setup@v4 with: - version: 8 + version: 10 - name: Setup Rust uses: dtolnay/rust-toolchain@stable @@ -86,12 +86,12 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: '22' - name: Setup pnpm uses: pnpm/action-setup@v4 with: - version: 8 + version: 10 - name: Setup Rust uses: dtolnay/rust-toolchain@stable diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b4fd3e1..e961657 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -110,13 +110,13 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: '22' cache: 'npm' - name: Setup pnpm uses: pnpm/action-setup@v4 with: - version: 8 + version: 10 - name: Setup Rust uses: dtolnay/rust-toolchain@stable diff --git a/README.md b/README.md index a75cffa..5e15ffa 100644 --- a/README.md +++ b/README.md @@ -56,12 +56,13 @@ A desktop application built with Tauri 2.0 for ambient light control, supporting 2. **Install Node.js and pnpm** ```bash - # Install Node.js (recommended using nvm) + # Install Node.js 22 LTS (recommended using nvm) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash - nvm install node + nvm install 22 + nvm use 22 - # Install pnpm - npm install -g pnpm + # Install pnpm 10+ + npm install -g pnpm@latest ``` 3. **Install Tauri CLI** diff --git a/package.json b/package.json index cd59434..4ef0202 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,26 @@ { - "name": "test-demo", - "version": "0.0.0", - "description": "", + "name": "display-ambient-light", + "version": "2.0.0-alpha", + "description": "A desktop application for controlling ambient lighting based on screen content, supporting WS2812B and SK6812 LED strips with real-time color synchronization.", + "author": "Ivan Li", + "homepage": "https://github.com/IvanLi-CN/display-ambient-light", + "repository": { + "type": "git", + "url": "https://github.com/IvanLi-CN/display-ambient-light.git" + }, + "keywords": [ + "ambient-light", + "led-control", + "screen-sync", + "ws2812b", + "sk6812", + "tauri", + "desktop-app" + ], + "engines": { + "node": ">=22.0.0", + "pnpm": ">=10.0.0" + }, "scripts": { "start": "vite", "dev": "vite", diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 70fd122..82a7c5f 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -41,6 +41,45 @@ dependencies = [ "alloc-no-stdlib", ] +[[package]] +name = "ambient-light-control" +version = "2.0.0-alpha" +dependencies = [ + "anyhow", + "color_space", + "core-foundation 0.9.4", + "core-graphics 0.22.3", + "coreaudio-rs", + "ddc-hi", + "dirs 5.0.1", + "display-info", + "env_logger", + "futures", + "futures-util", + "hex", + "image", + "itertools 0.10.5", + "log", + "mdns-sd", + "paris", + "percent-encoding", + "regex", + "screen-capture-kit", + "serde", + "serde_json", + "sha1", + "tauri", + "tauri-build", + "tauri-plugin-shell", + "time", + "tokio", + "tokio-stream", + "tokio-tungstenite", + "tokio-util", + "toml 0.7.8", + "url-build-parse", +] + [[package]] name = "android-tzdata" version = "0.1.1" @@ -4398,45 +4437,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "test-demo" -version = "0.0.0" -dependencies = [ - "anyhow", - "color_space", - "core-foundation 0.9.4", - "core-graphics 0.22.3", - "coreaudio-rs", - "ddc-hi", - "dirs 5.0.1", - "display-info", - "env_logger", - "futures", - "futures-util", - "hex", - "image", - "itertools 0.10.5", - "log", - "mdns-sd", - "paris", - "percent-encoding", - "regex", - "screen-capture-kit", - "serde", - "serde_json", - "sha1", - "tauri", - "tauri-build", - "tauri-plugin-shell", - "time", - "tokio", - "tokio-stream", - "tokio-tungstenite", - "tokio-util", - "toml 0.7.8", - "url-build-parse", -] - [[package]] name = "thiserror" version = "1.0.69" diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 6d4d505..5553acb 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,10 +1,10 @@ [package] -name = "test-demo" -version = "0.0.0" -description = "A Tauri App" -authors = ["you"] -license = "" -repository = "" +name = "ambient-light-control" +version = "2.0.0-alpha" +description = "A desktop application for controlling ambient lighting based on screen content" +authors = ["Ivan Li"] +license = "MIT" +repository = "https://github.com/ivan/display-ambient-light" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/src-tauri/src-tauri/.gitignore b/src-tauri/src-tauri/.gitignore deleted file mode 100644 index aba21e2..0000000 --- a/src-tauri/src-tauri/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Generated by Cargo -# will have compiled files and executables -/target/ diff --git a/src-tauri/src-tauri/Cargo.toml b/src-tauri/src-tauri/Cargo.toml deleted file mode 100644 index 1314c0e..0000000 --- a/src-tauri/src-tauri/Cargo.toml +++ /dev/null @@ -1,26 +0,0 @@ -[package] -name = "app" -version = "0.1.0" -description = "A Tauri App" -authors = ["you"] -license = "" -repository = "" -default-run = "app" -edition = "2021" -rust-version = "1.60" - -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - -[build-dependencies] -tauri-build = { version = "1.5.6" } - -[dependencies] -serde_json = "1.0" -serde = { version = "1.0", features = ["derive"] } -tauri = { version = "1.8.2" } - -[features] -# this feature is used for production builds or when `devPath` points to the filesystem and the built-in dev server is disabled. -# If you use cargo directly instead of tauri's cli you can use this feature flag to switch between tauri's `dev` and `build` modes. -# DO NOT REMOVE!! -custom-protocol = [ "tauri/custom-protocol" ] diff --git a/src-tauri/src-tauri/build.rs b/src-tauri/src-tauri/build.rs deleted file mode 100644 index 795b9b7..0000000 --- a/src-tauri/src-tauri/build.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() { - tauri_build::build() -} diff --git a/src-tauri/src-tauri/icons/128x128.png b/src-tauri/src-tauri/icons/128x128.png deleted file mode 100644 index 77e7d23..0000000 Binary files a/src-tauri/src-tauri/icons/128x128.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/128x128@2x.png b/src-tauri/src-tauri/icons/128x128@2x.png deleted file mode 100644 index 0f7976f..0000000 Binary files a/src-tauri/src-tauri/icons/128x128@2x.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/32x32.png b/src-tauri/src-tauri/icons/32x32.png deleted file mode 100644 index 98fda06..0000000 Binary files a/src-tauri/src-tauri/icons/32x32.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square107x107Logo.png b/src-tauri/src-tauri/icons/Square107x107Logo.png deleted file mode 100644 index f35d84f..0000000 Binary files a/src-tauri/src-tauri/icons/Square107x107Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square142x142Logo.png b/src-tauri/src-tauri/icons/Square142x142Logo.png deleted file mode 100644 index 1823bb2..0000000 Binary files a/src-tauri/src-tauri/icons/Square142x142Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square150x150Logo.png b/src-tauri/src-tauri/icons/Square150x150Logo.png deleted file mode 100644 index dc2b22c..0000000 Binary files a/src-tauri/src-tauri/icons/Square150x150Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square284x284Logo.png b/src-tauri/src-tauri/icons/Square284x284Logo.png deleted file mode 100644 index 0ed3984..0000000 Binary files a/src-tauri/src-tauri/icons/Square284x284Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square30x30Logo.png b/src-tauri/src-tauri/icons/Square30x30Logo.png deleted file mode 100644 index 60bf0ea..0000000 Binary files a/src-tauri/src-tauri/icons/Square30x30Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square310x310Logo.png b/src-tauri/src-tauri/icons/Square310x310Logo.png deleted file mode 100644 index c8ca0ad..0000000 Binary files a/src-tauri/src-tauri/icons/Square310x310Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square44x44Logo.png b/src-tauri/src-tauri/icons/Square44x44Logo.png deleted file mode 100644 index 8756459..0000000 Binary files a/src-tauri/src-tauri/icons/Square44x44Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square71x71Logo.png b/src-tauri/src-tauri/icons/Square71x71Logo.png deleted file mode 100644 index 2c8023c..0000000 Binary files a/src-tauri/src-tauri/icons/Square71x71Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/Square89x89Logo.png b/src-tauri/src-tauri/icons/Square89x89Logo.png deleted file mode 100644 index 2c5e603..0000000 Binary files a/src-tauri/src-tauri/icons/Square89x89Logo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/StoreLogo.png b/src-tauri/src-tauri/icons/StoreLogo.png deleted file mode 100644 index 17d142c..0000000 Binary files a/src-tauri/src-tauri/icons/StoreLogo.png and /dev/null differ diff --git a/src-tauri/src-tauri/icons/icon.icns b/src-tauri/src-tauri/icons/icon.icns deleted file mode 100644 index a2993ad..0000000 Binary files a/src-tauri/src-tauri/icons/icon.icns and /dev/null differ diff --git a/src-tauri/src-tauri/icons/icon.ico b/src-tauri/src-tauri/icons/icon.ico deleted file mode 100644 index 06c23c8..0000000 Binary files a/src-tauri/src-tauri/icons/icon.ico and /dev/null differ diff --git a/src-tauri/src-tauri/icons/icon.png b/src-tauri/src-tauri/icons/icon.png deleted file mode 100644 index d1756ce..0000000 Binary files a/src-tauri/src-tauri/icons/icon.png and /dev/null differ diff --git a/src-tauri/src-tauri/src/main.rs b/src-tauri/src-tauri/src/main.rs deleted file mode 100644 index f5c5be2..0000000 --- a/src-tauri/src-tauri/src/main.rs +++ /dev/null @@ -1,8 +0,0 @@ -// Prevents additional console window on Windows in release, DO NOT REMOVE!! -#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] - -fn main() { - tauri::Builder::default() - .run(tauri::generate_context!()) - .expect("error while running tauri application"); -} diff --git a/src-tauri/src-tauri/tauri.conf.json b/src-tauri/src-tauri/tauri.conf.json deleted file mode 100644 index 5bbb771..0000000 --- a/src-tauri/src-tauri/tauri.conf.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "build": { - "beforeBuildCommand": "npm run build", - "beforeDevCommand": "npm run dev", - "devPath": "http://localhost:4000", - "distDir": "../dist" - }, - "package": { - "productName": "Tauri App", - "version": "0.1.0" - }, - "tauri": { - "allowlist": { - "all": false - }, - "bundle": { - "active": true, - "category": "DeveloperTool", - "copyright": "", - "deb": { - "depends": [] - }, - "externalBin": [], - "icon": [ - "icons/32x32.png", - "icons/128x128.png", - "icons/128x128@2x.png", - "icons/icon.icns", - "icons/icon.ico" - ], - "identifier": "com.tauri.dev", - "longDescription": "", - "macOS": { - "entitlements": null, - "exceptionDomain": "", - "frameworks": [], - "providerShortName": null, - "signingIdentity": null - }, - "resources": [], - "shortDescription": "", - "targets": "all", - "windows": { - "certificateThumbprint": null, - "digestAlgorithm": "sha256", - "timestampUrl": "" - } - }, - "security": { - "csp": null - }, - "updater": { - "active": false - }, - "windows": [ - { - "fullscreen": false, - "height": 600, - "resizable": true, - "title": "Tauri", - "width": 800 - } - ] - } -} diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 008a7b2..28d201b 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2.0.0", - "productName": "test-demo", - "version": "0.0.1", + "productName": "Ambient Light Control", + "version": "2.0.0-alpha", "identifier": "cc.ivanli.ambient-light.desktop", "build": { "beforeDevCommand": "pnpm dev", @@ -23,7 +23,7 @@ { "fullscreen": false, "resizable": true, - "title": "test-demo", + "title": "Ambient Light Control", "width": 800, "height": 600 }