diff --git a/.forgejo/workflows/build-release.yml b/.forgejo/workflows/build-release.yml
index f7c8b29..5ef6aba 100644
--- a/.forgejo/workflows/build-release.yml
+++ b/.forgejo/workflows/build-release.yml
@@ -21,7 +21,9 @@ jobs:
           path: |
             ~/.cargo/bin
             /tmp/zig
-          key: cargo-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }} 
+          key: cargo-tools-${{ hashFiles('**/Cargo.lock') }}
+          restore-keys: |
+            cargo-tools-
 
       - name: ๐Ÿฆ€ Install Rust toolchain
         uses: https://github.com/actions-rs/toolchain@v1
@@ -39,9 +41,48 @@ jobs:
           tar -Jxf zig-linux-x86_64.tar.xz -C /tmp/zig --strip-components=1
           cargo install cargo-zigbuild
 
+  cargo-test:
+    name: ๐Ÿงช Run Cargo Tests
+    needs: [setup]
+    runs-on: ubuntu-latest
+    steps:
+      - name: ๐Ÿ“ฅ Checkout source
+        uses: https://github.com/actions/checkout@v4
+
+      - name: ๐Ÿ—„๏ธ Restore Cargo cache
+        uses: https://github.com/actions/cache@v4
+        with:
+          path: |
+            ~/.cargo/registry
+            ~/.cargo/git
+            target
+          key: cargo-${{ hashFiles('**/Cargo.lock') }}
+          restore-keys: |
+            cargo-
+
+      - name: ๐Ÿฆ€ Install Rust toolchain
+        if: steps.restore-cargo-cache.outputs.cache-hit != 'true'
+        uses: https://github.com/actions-rs/toolchain@v1
+        with:
+          toolchain: stable
+          components: rust-src
+          override: true
+
+      - name: ๐Ÿฆ€ Install Vulkan tools
+        run: |
+          apt update
+          apt install -y vulkan-tools glslc
+
+
+      - name: ๐Ÿš€ Run tests
+        uses:  https://github.com/actions-rs/cargo@v1
+        with:
+          command: test
+          args: --release --all
+
   build:
     name: ๐Ÿ—๏ธ Build ${{ matrix.target }}
-    needs: setup
+    needs: [setup, cargo-test]
     runs-on: ubuntu-latest
     strategy:
       fail-fast: false
@@ -49,7 +90,7 @@ jobs:
         target:
           - x86_64-unknown-linux-gnu
           - aarch64-unknown-linux-gnu
-          - x86_64-pc-windows-msvc
+          # - x86_64-pc-windows-msvc
         include:
           - target: x86_64-unknown-linux-gnu
             binary_name: zenyx-x86_64-linux
@@ -57,9 +98,9 @@ jobs:
           - target: aarch64-unknown-linux-gnu
             binary_name: zenyx-aarch64-linux
             ext: ""
-          - target: x86_64-pc-windows-msvc
-            binary_name: zenyx-x86_64-windows-msvc.exe
-            ext: ".exe"
+          # - target: x86_64-pc-windows-msvc
+          #   binary_name: zenyx-x86_64-windows-msvc.exe
+          #   ext: ".exe"
 
     steps:
       - name: ๐Ÿ“ฅ Checkout source
@@ -71,7 +112,10 @@ jobs:
           path: |
             ~/.cargo/bin
             /tmp/zig
-          key: cargo-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }}
+          key: cargo-tools-${{ hashFiles('**/Cargo.lock') }}
+          restore-keys: |
+            cargo-tools-
+
 
       - name: ๐Ÿ“ Add Zig to PATH
         run: echo "/tmp/zig" >> $GITHUB_PATH
@@ -90,20 +134,31 @@ jobs:
             ~/.cargo/registry
             ~/.cargo/git
             target
-          key: cargo-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }}
+          key: cargo-${{ hashFiles('**/Cargo.lock') }}
           restore-keys: |
-            cargo-${{ matrix.target }}-
+            cargo-
+      - name: ๐Ÿฆ€ Install Vulkan tools
+        run: |
+          apt update
+          apt install -y vulkan-tools glslc
 
       - name: ๐Ÿš€ Build release binary
-        run: cargo zigbuild --target ${{ matrix.target }} --release
+        uses: https://github.com/actions-rs/cargo@v1
+        with:
+          command: zigbuild
+          args: --target ${{ matrix.target }} --release
 
       - name: ๐Ÿ“ฆ Package artifact
         run: |
           mkdir -p artifacts
           cp target/${{ matrix.target }}/release/zenyx${{ matrix.ext }} artifacts/${{ matrix.binary_name }}
+          ls 
+          du -sh artifacts
+          ls -lah artifacts
+          ls -lah target/${{ matrix.target }}/release
 
       - name: โฌ†๏ธ Upload artifact
         uses: https://code.forgejo.org/forgejo/upload-artifact@v4
         with:
-          name: ${{ matrix.binary_name }}
-          path: artifacts/${{ matrix.binary_name }}
\ No newline at end of file
+          name: ${{ matrix.binary_name }}.zip
+          path: artifacts
\ No newline at end of file