diff --git a/.github/workflows/build-tauri.yml b/.github/workflows/build-tauri.yml new file mode 100644 index 0000000..21a3382 --- /dev/null +++ b/.github/workflows/build-tauri.yml @@ -0,0 +1,83 @@ +name: Build Tauri App + +on: + push: + branches: [main, dev] + tags: ["v*"] + pull_request: + branches: [main] + +permissions: + contents: write + +jobs: + build: + strategy: + fail-fast: false + matrix: + include: + - platform: ubuntu-22.04 + target: linux + - platform: macos-latest + target: macos + - platform: windows-latest + target: windows + + runs-on: ${{ matrix.platform }} + timeout-minutes: 30 + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Rust stable + uses: dtolnay/rust-toolchain@stable + + - name: Rust cache + uses: swatinem/rust-cache@v2 + with: + workspaces: src-tauri -> target + + - name: Install Linux dependencies + if: matrix.target == 'linux' + run: | + sudo apt-get update + sudo apt-get install -y \ + libwebkit2gtk-4.1-dev \ + libappindicator3-dev \ + librsvg2-dev \ + patchelf + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + + - name: Install frontend dependencies + run: npm ci + + - name: Build Tauri app + uses: tauri-apps/tauri-action@v0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tagName: ${{ github.ref_type == 'tag' && github.ref_name || '' }} + releaseName: ${{ github.ref_type == 'tag' && format('CardputerZero AppBuilder {0}', github.ref_name) || '' }} + releaseBody: "See the assets below to download and install." + releaseDraft: ${{ github.ref_type == 'tag' }} + prerelease: false + + - name: Upload artifacts + if: github.ref_type != 'tag' + uses: actions/upload-artifact@v4 + with: + name: cardputerzero-appbuilder-${{ matrix.target }} + path: | + src-tauri/target/release/bundle/deb/*.deb + src-tauri/target/release/bundle/appimage/*.AppImage + src-tauri/target/release/bundle/dmg/*.dmg + src-tauri/target/release/bundle/macos/*.app + src-tauri/target/release/bundle/msi/*.msi + src-tauri/target/release/bundle/nsis/*.exe + retention-days: 30 diff --git a/README.md b/README.md index c86f0f8..aab607b 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# M5Stack AppBuilder +# CardputerZero AppBuilder Online build system for [M5CardputerZero](https://docs.m5stack.com/) applications. Submit any public Git repository and get a ready-to-install `.deb` package — no local toolchain required. @@ -77,7 +77,7 @@ Generated packages follow the [APPLaunch packaging conventions](https://github.c ## Future: Desktop IDE -M5Stack AppBuilder is planned to become a cross-platform desktop IDE (Windows, macOS, Linux) for building M5CardputerZero applications locally — a visual scaffold for beginners and hobbyists to create, build, and deploy apps to their devices. +CardputerZero AppBuilder is planned to become a cross-platform desktop IDE (Windows, macOS, Linux) for building M5CardputerZero applications locally — a visual scaffold for beginners and hobbyists to create, build, and deploy apps to their devices. ## Related Projects diff --git a/docs/architecture.md b/docs/architecture.md index c0c00ce..89dac84 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -1,4 +1,4 @@ -# M5Stack AppBuilder — Desktop IDE Architecture +# CardputerZero AppBuilder — Desktop IDE Architecture ## Overview @@ -105,7 +105,7 @@ Tauri 2 desktop app (Rust backend + TypeScript/React frontend) for building, deb ## Directory Structure ``` -M5Stack-AppBuilder/ +CardputerZero-AppBuilder/ ├── src-tauri/ # Rust backend │ ├── src/ │ │ ├── main.rs # Tauri entry point diff --git a/index.html b/index.html index a71b19e..86a9a5e 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ - appbuilder-init + CardputerZero AppBuilder
diff --git a/package.json b/package.json index 946a16f..9046f24 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "appbuilder-init", + "name": "cardputerzero-appbuilder", "private": true, "version": "0.0.0", "type": "module", diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 52ac667..21972d3 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,8 +1,8 @@ { "$schema": "../node_modules/@tauri-apps/cli/config.schema.json", - "productName": "M5Stack AppBuilder", + "productName": "CardputerZero AppBuilder", "version": "0.1.0", - "identifier": "com.m5stack.appbuilder", + "identifier": "com.m5stack.cardputerzero-appbuilder", "build": { "frontendDist": "../dist", "devUrl": "http://localhost:5173", @@ -12,7 +12,7 @@ "app": { "windows": [ { - "title": "M5Stack AppBuilder", + "title": "CardputerZero AppBuilder", "width": 1200, "height": 800, "resizable": true,