diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..d4e9e25
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,60 @@
+name: Dart CI
+
+on:
+  push:
+    branches: [ master ]
+  pull_request:
+    branches: [ master ]
+  schedule:
+    - cron: "0 0 * * 0"
+
+env:
+  PUB_ENVIRONMENT: bot.github
+
+jobs:
+  # Check code formatting and static analysis on a single OS (linux)
+  # against Dart dev.
+  analyze:
+    runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+      matrix:
+        sdk: [dev]
+    steps:
+      - uses: actions/checkout@v2
+      - uses: dart-lang/setup-dart@v1.0
+        with:
+          sdk: ${{ matrix.sdk }}
+      - id: install
+        name: Install dependencies
+        run: dart pub get
+      - name: Check formatting
+        run: dart format --output=none --set-exit-if-changed .
+        if: always() && steps.install.outcome == 'success'
+      - name: Analyze code
+        run: dart analyze --fatal-infos
+        if: always() && steps.install.outcome == 'success'
+
+  # Run tests on a matrix consisting of two dimensions:
+  # 1. OS: ubuntu-latest
+  # 2. release channel: dev
+  test:
+    needs: analyze
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+        # Add macos-latest and/or windows-latest if relevant for this package.
+        os: [ubuntu-latest]
+        sdk: [2.12.0, dev]
+    steps:
+      - uses: actions/checkout@v2
+      - uses: dart-lang/setup-dart@v1.0
+        with:
+          sdk: ${{ matrix.sdk }}
+      - id: install
+        name: Install dependencies
+        run: dart pub get
+      - name: Run VM tests
+        run: dart test --platform vm --test-randomize-ordering-seed=random
+        if: always() && steps.install.outcome == 'success'
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 4fceea8..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1,21 +0,0 @@
-language: dart
-
-dart:
-  - preview/raw/2.10.0-0.2-dev
-
-dart_task:
-  - dart_analyzer: --enable-experiment=non-nullable --fatal-warnings --fatal-infos .
-
-matrix:
-  include:
-  # Only validate formatting using the dev release
-  - dart: preview/raw/2.10.0-0.2-dev
-    dart_task: dartfmt
-
-# Only building master means that we don't run two builds for each pull request.
-branches:
-  only: [master]
-
-cache:
- directories:
-   - $HOME/.pub-cache
diff --git a/bin/charcode.dart b/bin/charcode.dart
index 3acadb4..2053fde 100644
--- a/bin/charcode.dart
+++ b/bin/charcode.dart
@@ -147,7 +147,6 @@
 
 /// A single declaration to be written to the output.
 class Entry implements Comparable<Entry> {
-
   /// The code point.
   final int charCode;
 
@@ -196,6 +195,7 @@
 class CharacterDeclaration {
   /// The unprefixed name to use for the code point.
   final String name;
+
   /// An optional description.
   final String? description;
   CharacterDeclaration(this.name, this.description);
@@ -332,7 +332,8 @@
           "(U+${charCode.toRadixString(16).toUpperCase().padLeft(4, "0")})");
       return false;
     }
-    _entries.add(Entry(charCode, declaration.name, prefix, declaration.description));
+    _entries.add(
+        Entry(charCode, declaration.name, prefix, declaration.description));
     _entryNames.add(name);
     return true;
   }
diff --git a/bin/src/uflags.dart b/bin/src/uflags.dart
index 2a0c6e7..acdac37 100644
--- a/bin/src/uflags.dart
+++ b/bin/src/uflags.dart
@@ -424,8 +424,7 @@
       if (bytes[start] == $dash) start++;
       if (bytes[end - 1] == $dash) end--;
     }
-    return String.fromCharCodes(
-        Uint8List.sublistView(bytes, start, end));
+    return String.fromCharCodes(Uint8List.sublistView(bytes, start, end));
   }
   return upperCase == 0 ? name.toLowerCase() : name;
 }
