diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml
new file mode 100644
index 0000000000000000000000000000000000000000..1f179678928a7417f4ef0cabf404c411a16ef2bd
--- /dev/null
+++ b/.github/workflows/mac.yml
@@ -0,0 +1,29 @@
+name: macOS
+
+on: [push, pull_request]
+
+jobs:
+  macOS:
+    runs-on: macos-latest
+    steps:
+    - name: Checkout
+      uses: actions/checkout@v4
+    - name: Brew install
+      run: |
+        brew install root boost cmake ninja
+    - name: Compile
+      run: |
+        mkdir build
+        cd build
+        cmake -GNinja -DDD4HEP_USE_GEANT4=OFF -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_LCIO=OFF -DBUILD_TESTING=ON  -DDD4HEP_USE_XERCESC=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=20 ..
+        ninja
+        ninja install
+        . ../bin/thisdd4hep.sh
+        ctest --output-on-failure -j4
+        cd ../examples/
+        mkdir build
+        cd build
+        cmake -GNinja -DBoost_NO_BOOST_CMAKE=ON -DDD4HEP_USE_XERCESC=OFF -DCMAKE_CXX_STANDARD=20 ..
+        ninja
+        ninja install
+        ctest --output-on-failure -E t_ClientTests_Check_Shape_Eightpoint_Reflect_DetElement