diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..8604e9a
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,59 @@
+name: Build
+
+on:
+ push:
+ branches: [ main, master ]
+ pull_request:
+ branches: [ main, master ]
+
+jobs:
+ build:
+ runs-on: macos-latest
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Set up Go
+ uses: actions/setup-go@v5
+ with:
+ go-version: '1.24.3'
+
+ - name: Install Fyne dependencies
+ run: |
+ # Install required system dependencies for Fyne
+ brew install pkg-config
+
+ - name: Install Fyne CLI
+ run: go install fyne.io/fyne/v2/cmd/fyne@latest
+
+ - name: Cache Go modules
+ uses: actions/cache@v4
+ with:
+ path: ~/go/pkg/mod
+ key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
+ restore-keys: |
+ ${{ runner.os }}-go-
+
+ - name: Download dependencies
+ run: go mod download
+
+ - name: Verify dependencies
+ run: go mod verify
+
+ - name: Run tests
+ run: go test -v ./...
+
+ - name: Build application
+ run: make build
+
+ - name: Verify build output
+ run: |
+ ls -la TurtleSilicon.app/
+ ls -la TurtleSilicon.app/Contents/Resources/
+
+ - name: Upload build artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: TurtleSilicon-macos
+ path: TurtleSilicon.app/
+ retention-days: 30
diff --git a/README.md b/README.md
index 253476d..bce2979 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,7 @@
# TurtleSilicon
+[](https://github.com/tairasu/TurtleSilicon/actions/workflows/build.yml)
+