diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml
new file mode 100644
index 0000000..ce8e6a5
--- /dev/null
+++ b/.github/workflows/rust.yml
@@ -0,0 +1,34 @@
+name: Rust
+
+on:
+ push
+
+env:
+ CARGO_TERM_COLOR: always
+
+jobs:
+ build:
+
+ strategy:
+ matrix:
+ platform: [ubuntu-latest, macos-latest, windows-latest]
+
+ runs-on: ${{ matrix.platform }}
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: Build
+ run: cargo build --verbose
+ - name: Run tests
+ run: cargo test --verbose
+
+ build2:
+ runs-on: [macos-latest]
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: Cross Build iOS
+ run: cargo build --target aarch64-apple-ios
+ - name: Cross Build MacOS ARM
+ run: cargo build --target aarch64-apple-darwin
+